From 0dd38fb82985c4eea793213dff7b704a89c72e4c Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 10 May 2010 08:40:15 +0200 Subject: [PATCH] fakevim: fix crash on shutdown --- src/plugins/fakevim/fakevimhandler.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index aa521f430b9..d4e1e11165e 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -128,7 +128,6 @@ namespace Internal { #define StartOfDocument QTextCursor::Start #define EDITOR(s) (m_textedit ? m_textedit->s : m_plaintextedit->s) -#define DEDITOR(s) (d->m_textedit ? d->m_textedit->s : d->m_plaintextedit->s) const int ParagraphSeparator = 0x00002029; @@ -4425,7 +4424,12 @@ bool FakeVimHandler::eventFilter(QObject *ob, QEvent *ev) bool active = theFakeVimSetting(ConfigUseFakeVim)->value().toBool(); // Catch mouse events on the viewport. - if (ob == DEDITOR(viewport())) { + QWidget *viewport = 0; + if (d->m_plaintextedit) + viewport = d->m_plaintextedit->viewport(); + else if (d->m_textedit) + viewport = d->m_textedit->viewport(); + if (ob == viewport) { if (active && ev->type() == QEvent::MouseButtonRelease) { QMouseEvent *mev = static_cast(ev); if (mev->button() == Qt::LeftButton) {