Version: (using KDE KDE 3.3.2) Installed from: Debian testing/unstable Packages OS: Linux If I try to launch korganizer, I get the following error : berti@venus:~/code/kynaptic-kde/src$ korganizer ERROR: Communication problem with korganizer, it probably crashed. After some research, it appears that if I remove my ~/.kde/share/apps/korganizer/std.ics file, korganizer is working. I've succeed to reduc my std.ics file to two entries. If these entries are there, korganizer crash. If only one of the two is removed (any of the two), korganizer is working. In attachment, I put the std.ics file.
Created attachment 10163 [details] the bogus std.ics file
Still crashes in today's 3.5 branch.
Reassigning all KOrganizer bug reports and wishes to the newly created korganizer-devel mailing list.
SVN commit 614095 by mkoller: BUG: 101696 Break recursive relation to avoid endless loop M +14 -1 kotodoview.cpp --- branches/KDE/3.5/kdepim/korganizer/kotodoview.cpp #614094:614095 @@ -590,6 +590,9 @@ // Use dynamic_cast, because in the future the related item might also be an event Todo *relatedTodo = dynamic_cast<Todo *>(incidence); + // just make sure we know we have this item already to avoid endless recursion (Bug 101696) + mTodoMap.insert(todo,0); + // kdDebug(5850) << " has Related" << endl; QMap<Todo *,KOTodoViewItem *>::ConstIterator itemIterator; itemIterator = mTodoMap.find(relatedTodo); @@ -599,7 +602,17 @@ } // isn't this pretty stupid? We give one Todo to the KOTodoViewItem // and one into the map. Sure finding is more easy but why? -zecke - KOTodoViewItem *todoItem = new KOTodoViewItem(*itemIterator,todo,this); + KOTodoViewItem *todoItem; + + // in case we found a related parent, which has no KOTodoViewItem yet, this must + // be the case where 2 items refer to each other, therefore simply create item as root item + if ( *itemIterator == 0 ) { + todo->setRelatedTo(0); // break the recursion, else we will have troubles later + todoItem = new KOTodoViewItem(mTodoListView,todo,this); + } + else + todoItem = new KOTodoViewItem(*itemIterator,todo,this); + return mTodoMap.insert(todo,todoItem); } else { // kdDebug(5850) << " no Related" << endl;