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



kdecore/io/kmountpoint.cpp
<http://git.reviewboard.kde.org/r/110225/#comment23614>

    The function would be shorter to write this way:
    
    
    if (parent == child) {
        return true;
    }
    if (parent.endsWith('/')) {
        return child.startsWith(parent);
    } else {
        return child.startsWith(parent + '/');
    }
    
    This also avoids the assert below.
    It creates a temp QString, though, so we need to choose between 
simplicity/readability and speed.
    
    Hmm, both implementations return false erroneously if parent="/books/" and 
child="/books", right?



kdecore/io/kmountpoint.cpp
<http://git.reviewboard.kde.org/r/110225/#comment23609>

    How can we be sure of that?
    
    We could have a mountpoint for /usr and one for /usr/local, so if the path 
is /usr we could end up here with child=/usr and parent=/usr/local, and the 
assert will fire.


- David Faure


On April 27, 2013, 9:29 p.m., Frank Reininghaus wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/110225/
> -----------------------------------------------------------
> 
> (Updated April 27, 2013, 9:29 p.m.)
> 
> 
> Review request for kdelibs, David Faure and Jekyll Wu.
> 
> 
> Description
> -------
> 
> The current algorithm that tries to find out what mount point a path belongs 
> to only checks if the first part of the string matches the mount point. The 
> problem is that /books is then considered a path inside /book, which is 
> obviously wrong.
> 
> I propose to fix this by verifying that either the mount point ends with a 
> '/', or the first char of the path that does not match the mount point is a 
> '/'. I've factored this check out into a separate function to keep the code 
> readable.
> 
> Many thanks to Jekyll Wu, who analyzed this bug and found the right place in 
> the code.
> 
> 
> This addresses bug 193298.
>     http://bugs.kde.org/show_bug.cgi?id=193298
> 
> 
> Diffs
> -----
> 
>   kdecore/io/kmountpoint.cpp aa7a6b1 
> 
> Diff: http://git.reviewboard.kde.org/r/110225/diff/
> 
> 
> Testing
> -------
> 
> Works for me.
> 
> 
> Thanks,
> 
> Frank Reininghaus
> 
>

Reply via email to