----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/100723/#review3333 -----------------------------------------------------------
I am sorry, I think I fixed the bug myself without being aware that there is an outstanding review request. When a node is deleted I go recursive through all the children now to check if one of then still has a running query. No MultiHash needed. I also have a branch somewhere doing more CollectionTreeItem cleaning if someone is interested. Anyway, If I understood everything right, then we can discard this request, right? - Ralf On Feb. 25, 2011, 1:16 p.m., Wolfgang Lorenz wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://git.reviewboard.kde.org/r/100723/ > ----------------------------------------------------------- > > (Updated Feb. 25, 2011, 1:16 p.m.) > > > Review request for Amarok. > > > Summary > ------- > > patch for https://bugs.kde.org/show_bug.cgi?id=233170 > > When a query is started the Collections::QueryMaker* is stored in > QHash<CollectionTreeItem*, Collections::QueryMaker*> runningQueries. > > Now, when CollectionTreeItemModelBase::populateChildren deletes items > CollectionTreeItemModelBase::itemAboutToBeDeleted > is called, which in turn stops, disconnects and deletes the queryMaker > associated with the item. > > The problem occurs, if there is more than one queryMaker for the item, as > will happen, when > CollectionTreeItemModelBase::handleCompilations > is called. In this case itemAboutToBeDeleted deletes only one queryMaker. The > other one finishes normally, calls > CollectionTreeItemModelBase::queryDone, > which in turn calls > CollectionTreeItem::row > of a deleted item and Amarok crashes with a segfault. > > The patch changes the runningQueries buffer to QMultiHash. So all queryMakers > are kept and itemAboutToBeDeleted can stop them all. > > > This addresses bug 233170. > https://bugs.kde.org/show_bug.cgi?id=233170 > > > Diffs > ----- > > src/browsers/CollectionTreeItemModelBase.h df260d6 > src/browsers/CollectionTreeItemModelBase.cpp 9e5a50d > > Diff: http://git.reviewboard.kde.org/r/100723/diff > > > Testing > ------- > > Sometimes Amarok still crashed, when entering a search. Unfortunately, the > backtrace was always empty in these cases. I don't know why. This could be > another bug. > > > Thanks, > > Wolfgang > >
_______________________________________________ Amarok-devel mailing list Amarok-devel@kde.org https://mail.kde.org/mailman/listinfo/amarok-devel