still crashing when closing files - HistoryPart ?
Daniel Franke
daniel.franke at imbs.uni-luebeck.de
Sat Sep 6 23:10:05 UTC 2003
>
> I even had times when HistoryPart::m_history was _empty_, the file then
> could be closed (when using shortcuts only), gideon was still alive.
>
Sorry for posting so much ... but its so _annoying_ not to be allowed to
close any file without crashing :(
Still in hope anyone can help,
here I have a completely different backtrace.
1. open file
2. close file using context menu (right click at tab bar)
3. gideon still alive
4. reopen the same file
5. close as before
6. crash
Another idea I had: might there be race conditions involved?
I've got two processors in my SUN boxes ...
regards
Daniel
--start--
The following output starts after the file was loaded,
(I added those lines containing 'DANIEL')
kdevelop (history): history-length=0
kdevelop (core): SPLASH: message=Loading Project
kdevelop (core): removed id -59 at index 0
gideon: Context::hasType(0). this->type() == 2
gideon: Context::hasType(2). this->type() == 2
kdevelop (core): CvsPart::contextMenu()
kdevelop (core): fcontext->urls() returned an empty list. I'll try to get
the single file.
kdevelop (core): List has 1 elements.
kdevelop (core): * Element = /home/franke/project
gideon: Context::hasType(2). this->type() == 2
kdevelop (grep view): context in grepview
gideon: Context::hasType(0). this->type() == 2
gideon: Context::hasType(2). this->type() == 2
kio (KTrader): KServiceTypeProfile::offers( application/octet-stream, )
kio (KTrader): Returning 0 offers
kdevelop (doc tree view): context in doctree
gideon: Context::hasType(0). this->type() == 2
gideon: Context::hasType(1). this->type() == 2
kdevelop (core): Word::
gideon: Context::hasType(0). this->type() == 0
gideon: Context::hasType(2). this->type() == 0
gideon: Context::hasType(2). this->type() == 0
kdevelop (grep view): context in grepview
gideon: Context::hasType(0). this->type() == 0
gideon: Context::hasType(2). this->type() == 0
kdevelop (doc tree view): context in doctree
gideon: Context::hasType(0). this->type() == 0
gideon: EditorContext::~EditorContext()
gideon: Context::~Context()
gideon: FileContext::~FileContext()
gideon: Context::~Context()
in close part for widget
gideon: DANIEL: m_history.count() = 0
gideon: DANIEL: part = 1112680
gideon: DANIEL: it.current() = 0
--break--
In most cases 'm_history.count()' equal '1' here, but now, everythings fine!
>From now: reopening the file, close it again.
--continue--
kdevelop (history): history-length=0
kparts: 16a510 emitting activePartChanged 0
kparts: MainWindow::createGUI, part=0
kparts: deactivating GUI for 1112680 KateDocument Kate::Document
kdevelop (core): MainWindowShare::slotGUICreated()
kdevelop (abbrev): AbbrevPart::slotActivePartChanged()
gideon: KonsoleViewWidget::activePartChanged()
gideon: ===> Changing dir to
kparts: Part::~Part 1112680
kparts: deleting widget [KateView pointer (0x5a1ba8) to unnamed widget,
geometry=697x397+3+3] unnamed
kdevelop (core): MainWindowShare::slotActionStatusText() -
kdevelop (core): MainWindowShare::slotActionStatusText() -
kdevelop (core): [virtual void PartController::editDocument(const KURL&,
int, int)] file:/home/franke/project linenum -1
kdevelop (core): mimeType = text/plain
kio (KTrader): KServiceTypeProfile::offers( text/plain, )
kio (KTrader): Returning 8 offers
kdevelop (core): factory = 78cd78
kio (KTrader): KServiceTypeProfile::offers( KTextEditor/Plugin, )
kio (KTrader): Returning 3 offers
kdecore (KAction): WARNING: KAction::plug(): has no KAccel object; this =
567278 name = bookmarks_toggle parentCollection = 5b7338
kdecore (KAction): WARNING: KAction::plug(): has no KAccel object; this =
5b2120 name = bookmarks_next parentCollection = 5b7338
kdecore (KAction): WARNING: KAction::plug(): has no KAccel object; this =
5b1978 name = bookmarks_previous parentCollection = 5b7338
kdevelop (core): Encoding: , extension: d44bc0
Kate (Document): servicetype:
Kate (Document): myEncoding: ISO 8859-1
Kate (Document): Loading finished.
kparts: 16a510 emitting activePartChanged 1112680
kparts: MainWindow::createGUI, part=1112680 KateDocument Kate::Document
kparts: ReadOnlyPart::guiActivateEvent -> file:/home/franke/project
kdevelop (core): MainWindowShare::slotGUICreated()
kdevelop (core): *** found "set_confdlg" action - unplugging
kdevelop (abbrev): AbbrevPart::slotActivePartChanged()
gideon: KonsoleViewWidget::activePartChanged()
gideon: ===> Changing dir to /home/franke
gideon: KonsoleViewWidget::setDirectory()
gideon: ===> part is 0
kdevelop (history): history-length=1
kdevelop (history): partAdded=1112680
kio (KDirWatch): Added already watched Entry /home/franke/project (now 2
clients) [KDirWatch-1]
kdevelop (core): dcop emitting loadedFile /home/franke/project
QObject::connect: No such signal KateDocument::fileNameChanged(const KURL&)
QObject::connect: (sender name: 'Kate::Document')
QObject::connect: (receiver name: 'unnamed')
in close part for widget
gideon: DANIEL: m_history.count() = 1
gideon: DANIEL: part = 1112680
gideon: DANIEL: it.current() = 81aff0
gideon: DANIEL: it.current()->m_url = /home/franke/project
kdevelop (history): history-length=0
--crash--
The backtrace now looks completely different:
(gdb) bt
#0 0x7e612284 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#1 0x7e6118f0 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#2 0x7eced26c in ?? () from /usr/local/kde3/lib/libkdecore.so.4
#3 0x7f4f6e4c in ?? () from /usr/local/kde3/lib/libkparts.so.2
#4 0x7f4f64ec in ?? () from /usr/local/kde3/lib/libkparts.so.2
#5 0x0005116c in QSize::height() const () at partcontroller.cpp:542
#6 0x000527a0 in KDevFileSelector::staticMetaObject()::param_slot_11 ()
#7 0x000526ac in p.0 ()
#8 0x00053b98 in
DocTreeGlobalConfigWidgetBase::~DocTreeGlobalConfigWidgetBase() () at
partcontroller.moc:161
#9 0x7e6638a8 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#10 0x0007f690 in std::basic_fstream<char, std::char_traits<char>
>::basic_fstream() () at ktabwidget.moc:235
#11 0x0007f938 in KTabWidget::qt_emit(int, QUObject*) (this=0x168960, _id=4,
_o=0xffbee400) at ktabwidget.moc:259
#12 0x7e6638a8 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#13 0x0007ef74 in _GLOBAL__I__ZN11ColorSchema6serialE () at
ktabwidget.moc:111
#14 0x0007eb7c in KTabBar::closeWindowSlot() (this=0x16b0f8) at
ktabwidget.cpp:43
#15 0x0007f230 in std::basic_ofstream<char, std::char_traits<char>
>::basic_ofstream(char const*, std::_Ios_Openmode) ()
at ktabwidget.moc:131
#16 0x7e6638a8 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#17 0x7e8f9fd8 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#18 0x7e73aa30 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#19 0x7e692f6c in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#20 0x7e612290 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#21 0x7e611958 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#22 0x7eced26c in ?? () from /usr/local/kde3/lib/libkdecore.so.4
#23 0x7e5bb0e0 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#24 0x7e5b8a18 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#25 0x7e5cd168 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#26 0x7e624bc8 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#27 0x7e61250c in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#28 0x7e73d228 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#29 0x0007ecbc in std::basic_ifstream<char, std::char_traits<char>
>::~basic_ifstream() () at ktabwidget.cpp:61
#30 0x7e692f3c in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#31 0x7e7567fc in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
---Type <return> to continue, or q <return> to quit---
#32 0x7e612290 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#33 0x7e611958 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#34 0x7eced26c in ?? () from /usr/local/kde3/lib/libkdecore.so.4
#35 0x7e5bb53c in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#36 0x7e5b8a18 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#37 0x7e5cd168 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#38 0x7e624bc8 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#39 0x7e624a98 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#40 0x7e6124c0 in ?? () from /usr/local/qt3/lib/libqt-mt.so.3
#41 0x00046394 in typeinfo name for KTextEditor::ViewCursorDCOPInterface ()
More information about the KDevelop-devel
mailing list