Discussion:
[Bug 277961] Kdevelop crashes on splitting editor screen
(for gammel til at besvare)
Torbjörn K.
2011-07-17 17:50:22 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=277961





--- Comment #1 from Torbjörn K. <torbjoern k googlemail com> 2011-07-17 17:50:21 ---
Created an attachment (id=61942)
--> (http://bugs.kde.org/attachment.cgi?id=61942)
GDB log of this crash

I reproduced this bug within GDB. Steps to reproduce:

- 2 projects open, 2 files open
- right-click on one of the two file-tabs and "slit view"
--> crash
--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
Torbjörn K.
2011-07-17 18:03:59 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=277961





--- Comment #2 from Torbjörn K. <torbjoern k googlemail com> 2011-07-17 18:03:59 ---
Created an attachment (id=61943)
--> (http://bugs.kde.org/attachment.cgi?id=61943)
GDB log of this crash (Kdevelop & kdevplatform installed from master through
openSUSE repo)

Same crash but with KDevelop and Kdevplatform installed through openSUSE repo
from master and not self-compiled. Same scenario as above.
--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
Milian Wolff
2011-07-18 11:50:48 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=277961


Milian Wolff <***@milianw.de> changed:

What |Removed |Added
----------------------------------------------------------------------------
Priority|NOR |VHI
Status|UNCONFIRMED |NEW
CC| |***@art-master
| |.de
Ever Confirmed|0 |1




--- Comment #3 from Milian Wolff <mail milianw de> 2011-07-18 11:50:48 ---
reproducible by sharing a working set between two areas and then splitting a
view

valgrind log:
==3663== Invalid read of size 8
==3663== at 0x90F85E2: QObject::connect(QObject const*, char const*, QObject
const*, char const*, Qt::ConnectionType) (in /usr/lib/libQtCore.so.4.7.3)
==3663== by 0x7255509: Sublime::Area::addView(Sublime::View*,
Sublime::AreaIndex*, Qt::Orientation) (area.cpp:198)
==3663== by 0x725548A: Sublime::Area::addView(Sublime::View*,
Sublime::View*, Qt::Orientation) (area.cpp:191)
==3663== by 0x55AF888: KDevelop::MainWindowPrivate::split(Qt::Orientation)
(mainwindow_actions.cpp:128)
==3663== by 0x55AF7E6: KDevelop::MainWindowPrivate::splitHorizontal()
(mainwindow_actions.cpp:111)
==3663== by 0x55AFBD8:
KDevelop::MainWindowPrivate::contextMenuSplitHorizontal()
(mainwindow_actions.cpp:195)
==3663== by 0x55B0179:
KDevelop::MainWindowPrivate::qt_metacall(QMetaObject::Call, int, void**)
(mainwindow_p.moc:163)
==3663== by 0x90F77F9: QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (in /usr/lib/libQtCore.so.4.7.3)
==3663== by 0x97E2B61: QAction::triggered(bool) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x97E2D4E: QAction::activate(QAction::ActionEvent) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9C14C18: ??? (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9C1A861: ??? (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x89B6C9C: KMenu::mouseReleaseEvent(QMouseEvent*) (in
/usr/lib/libkdeui.so.5.6.0)
==3663== by 0x983969F: QWidget::event(QEvent*) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9C1BE0A: QMenu::event(QEvent*) (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x97E9173: QApplicationPrivate::notify_helper(QObject*, QEvent*)
(in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x97EE8E1: QApplication::notify(QObject*, QEvent*) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x88EFE05: KApplication::notify(QObject*, QEvent*) (in
/usr/lib/libkdeui.so.5.6.0)
==3663== by 0x90E4BBB: QCoreApplication::notifyInternal(QObject*, QEvent*)
(in /usr/lib/libQtCore.so.4.7.3)
==3663== by 0x97EA141: QApplicationPrivate::sendMouseEvent(QWidget*,
QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9866A0C: ??? (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9865109: QApplication::x11ProcessEvent(_XEvent*) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x988C541: ??? (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0xFC7629C: g_main_context_dispatch (in
/usr/lib/libglib-2.0.so.0.2800.8)
==3663== by 0xFC76A77: ??? (in /usr/lib/libglib-2.0.so.0.2800.8)
==3663== Address 0x1ff81210 is 0 bytes inside a block of size 32 free'd
==3663== at 0x4C251FC: operator delete(void*) (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==3663== by 0x55DBD4F: KDevelop::TextView::~TextView()
(textdocument.cpp:549)
==3663== by 0x55D9454:
KDevelop::PartDocument::close(KDevelop::IDocument::DocumentSaveMode)
(partdocument.cpp:136)
==3663== by 0x55DBB77:
KDevelop::TextDocument::close(KDevelop::IDocument::DocumentSaveMode)
(textdocument.cpp:519)
==3663== by 0x55D96D9: KDevelop::PartDocument::closeDocument(bool)
(partdocument.cpp:153)
==3663== by 0x7256FDE: Sublime::Area::closeView(Sublime::View*, bool)
(area.cpp:448)
==3663== by 0x725714A: Sublime::Area::clearViews(bool) (area.cpp:470)
==3663== by 0x5595AB0: KDevelop::WorkingSet::loadToArea(Sublime::Area*,
Sublime::AreaIndex*, bool) (workingset.cpp:189)
==3663== by 0x559879C: KDevelop::WorkingSet::changed(Sublime::Area*)
(workingset.cpp:508)
==3663== by 0x55976BD:
KDevelop::WorkingSet::areaViewAdded(Sublime::AreaIndex*, Sublime::View*)
(workingset.cpp:367)
==3663== by 0x55989D3: KDevelop::WorkingSet::qt_metacall(QMetaObject::Call,
int, void**) (workingset.moc:84)
==3663== by 0x90F77F9: QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (in /usr/lib/libQtCore.so.4.7.3)
==3663== by 0x7257582: Sublime::Area::viewAdded(Sublime::AreaIndex*,
Sublime::View*) (area.moc:115)
==3663== by 0x72554D2: Sublime::Area::addView(Sublime::View*,
Sublime::AreaIndex*, Qt::Orientation) (area.cpp:197)
==3663== by 0x725548A: Sublime::Area::addView(Sublime::View*,
Sublime::View*, Qt::Orientation) (area.cpp:191)
==3663== by 0x55AF888: KDevelop::MainWindowPrivate::split(Qt::Orientation)
(mainwindow_actions.cpp:128)
==3663== by 0x55AF7E6: KDevelop::MainWindowPrivate::splitHorizontal()
(mainwindow_actions.cpp:111)
==3663== by 0x55AFBD8:
KDevelop::MainWindowPrivate::contextMenuSplitHorizontal()
(mainwindow_actions.cpp:195)
==3663== by 0x55B0179:
KDevelop::MainWindowPrivate::qt_metacall(QMetaObject::Call, int, void**)
(mainwindow_p.moc:163)
==3663== by 0x90F77F9: QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (in /usr/lib/libQtCore.so.4.7.3)
==3663== by 0x97E2B61: QAction::triggered(bool) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x97E2D4E: QAction::activate(QAction::ActionEvent) (in
/usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9C14C18: ??? (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x9C1A861: ??? (in /usr/lib/libQtGui.so.4.7.3)
==3663== by 0x89B6C9C: KMenu::mouseReleaseEvent(QMouseEvent*) (in
/usr/lib/libkdeui.so.5.6.0)
==3663==
--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
David Nolden
2011-07-19 12:55:12 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=277961


David Nolden <***@art-master.de> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED




--- Comment #4 from David Nolden <david nolden kde art-master de> 2011-07-19 12:55:12 ---
Git commit 3e8ee920d901e4bb11eebe398728054f7c9126f1 by David Nolden.
Committed on 19/07/2011 at 14:53.
Pushed by zwabel into branch 'master'.

Fix a possible crash when working with split-views and when the working-set is
active in multiple areas.

It doesn't seem to be safe to clear one whole area while working on another
one, so bring back the old updating code which only selectively closes views.
Clear the whole area on a higher level while switching working-sets, to make
sure we sublime doesn't break while updating the views.
CCMAIL: kdevelop-***@barney.cs.uni-potsdam.de
BUG: 277961

M +4 -2 shell/workingsetcontroller.cpp
M +7 -2 shell/workingsets/workingset.cpp

http://commits.kde.org/kdevplatform/3e8ee920d901e4bb11eebe398728054f7c9126f1
--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
Loading...