> On April 20, 2015, 7:08 a.m., David Faure wrote: > > Should be committed to kdelibs4 indeed. Preferrably with the unittest > > improvements that you wrote for KF5. > > > > Sorry for the delay before I reviewed it.
No problem - the bug's been there for several years so a few more months won't hurt :) I'll commit it with the unit test once I've checked it compiles and passes. - Simeon ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/117345/#review79240 ----------------------------------------------------------- On Dec. 19, 2014, 6:50 p.m., Simeon Bird wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/117345/ > ----------------------------------------------------------- > > (Updated Dec. 19, 2014, 6:50 p.m.) > > > Review request for kdelibs. > > > Repository: kdelibs > > > Description > ------- > > Fix crash in KIO due to exposing inconsistent views of internal data. > > This can be triggered by renaming a directory while one of the files in it is > open in gwenview. > > It occurs because when KDirListerCache::emitRedirections is called, > itemsInUse contains the old url. However, KDirLister::Private::redirect > changes lstDirs to the new url. Thus at this point lstDirs contains an > item not in itemsInUse, which causes an assertion if forgetDirs is > called. > > In gwenview, the redirection signal is connected to openURL. This calls > forgetDirs, and causes the assertion. > > The solution: update itemsInUse *before* emitting redirections. > > This fixes the crash, but gwenview opens the first file in > the new directory instead of the file open before renaming. > This is probably an unrelated gwenview bug. > > I wrote this for kdelibs 4, but the code seems unchanged in kdelibs 5. > > > Diffs > ----- > > kio/kio/kdirlister.cpp aad6893f47eba81c3f78ed1ca7327adf6fb587bb > > Diff: https://git.reviewboard.kde.org/r/117345/diff/ > > > Testing > ------- > > It fixes the crash! It might break something else. > > > Thanks, > > Simeon Bird > >