> On Aug. 21, 2013, 9:28 p.m., Frank Reininghaus wrote:
> > I guess what Thomas meant is not that you should use 
> > QStringList_removeDuplicates directly, but that you should follow a similar 
> > approach to resolve the following problem with your current patch:
> > 
> > You have two nested loops which iterate over the list "lstServiceTypes". 
> > Therefore, the patched function has O(N^2) complexity, where N is the 
> > length of the list. If N ever becomes large (I'm not sure how likely that 
> > is), then there is a very bad performance problem.
> > 
> > BTW, your patch still has coding style issues. Always put a space behind 
> > "if", do not put spaces inside "(...)", and use braces even for single-line 
> >  if/else blocks, see
> > 
> > http://techbase.kde.org/Policies/Kdelibs_Coding_Style
> > 
> > for details. Even if the existing code does not follow the style, you 
> > should format any new or changed lines correctly.

The two nice things about the stringlist function are that it doesn't require a 
second list (but just collapses the current) and checks against a growing (but 
pre-allocated) set.

I guess the problem here is that KMimeType::is() is not commutative.
In this case that does unfortunately not work.

Since performance seems not critical anyway, that doesn't matter though.


- Thomas


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/111951/#review38305
-----------------------------------------------------------


On Aug. 21, 2013, 10:25 p.m., Mathias Tillman wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/111951/
> -----------------------------------------------------------
> 
> (Updated Aug. 21, 2013, 10:25 p.m.)
> 
> 
> Review request for kdelibs.
> 
> 
> Description
> -------
> 
> This fixes a bug introduced by 
> https://projects.kde.org/projects/kde/kdelibs/repository/revisions/871cccc8a88a600c8f850a020d44bfc5f5858caa
>  that made it impossible to re-order file type associations both in System 
> settings and in the open with list. Hence it contains a new way of detecting 
> duplicate (inherited) mimetype entries, that the original was supposed to fix.
> 
> 
> This addresses bug 321706.
>     http://bugs.kde.org/show_bug.cgi?id=321706
> 
> 
> Diffs
> -----
> 
>   kdecore/services/kservice.cpp 8e81929b91803a3eed586d9fc15cdd78165b6bce 
>   kded/kbuildservicefactory.cpp 7f89a991d088476d8ed94763e6fa65dcc3d0603c 
>   kded/kmimeassociations.h 4a2c71312ade32a9ac779495496bf6ebb78b37a4 
>   kded/kmimeassociations.cpp b0af7bcc4a39e5cce1fa6abe86cace476313702a 
> 
> Diff: http://git.reviewboard.kde.org/r/111951/diff/
> 
> 
> Testing
> -------
> 
> I have tested so that file type associations can be ordered correctly, in 
> addition to making sure that parent mimetypes have precedence when an app 
> lists two or more mimetypes where one is the parent of the other.
> 
> 
> Thanks,
> 
> Mathias Tillman
> 
>

Reply via email to