Kolf: Rumours of its death have been much exaggerated

Michael Jansen info at michael-jansen.biz
Sun Jul 5 16:52:25 BST 2009


> > As I mentioned on another thread, I have KDE 4.2, KDE 4.3,
> > Qt 4.4 and Qt 4.5 all installed in my dev setup and I can mix,
> > match and compare.  Without that, I would not have had no
> > hope of finding this bug in Kolf.
> >
> > In KDE 4.2, the KConfig::groupList() functions delivers
> > group names in sorted order in a QStringList, but in KDE 4.3
> > the names are not sorted, even if they were in the actual file,
> > as is the case in Kolf's Course files.
>
> There have been some changed in KConfig::groupList between KDE 4.2 and 4.3:
> [1] does not look suspicious (does not change the iteration order), but [2]
> changes the temporary result storage from QStringList to QSet<QString>,
> which is most probably the cause of problems.
>
> [1]http://websvn.kde.org/?view=rev&revision=874147
> [2]http://websvn.kde.org/?view=rev&revision=931254

That is the reason for the problem. The patch was to align the  
KConfig::groupList() implementation to the implementation used by 
KConfigGroups(). The old implementation did return results missing some 
childs.

The sorted nature of the returned list was undocumented so i didn't take that 
into account and i'm still not sure i should do.

Perhaps ossi and david have more ideas. but i think the easiest would be for 
kolf to sort the list after getting it. All other apps seem to have no problem 
with the changed behaviour so i would like to not introduce the overhead of 
sorting.

Mike





More information about the kde-core-devel mailing list