Review Request 124877: fix corruption of startupconfig(files) in Qt5.6

Aleix Pol Gonzalez aleixpol at kde.org
Wed Sep 2 13:26:28 UTC 2015



> On Aug. 31, 2015, 7 p.m., Aleix Pol Gonzalez wrote:
> > To be honest, I don't see how this should make a difference...
> 
> Takahiro Hashimoto wrote:
>     I'm sorry for lacking of my explanation...
>     
>     
>     Please see the difference of QString::fromLocal8Bit(const QByteArray &str) implementation between Qt 5.5 and 5.6
>     
>     (5.5) http://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/tools/qstring.h?h=5.5#n541
>     (5.6) http://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/tools/qstring.h#n545
>     
>     QString::fromLocal8Bit(const QByteArray &str) no longer use qstrlen() so that the padding data in QByteArray is included in the return value. It's the root cause of this problem.
>     
>     If we want to use QString::fromLocal8Bit() with QByteArray excluding padding data with Qt 5.6, we can use inline function QString::fromLocal8Bit(const char *str, int size = -1)
>     
>     http://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/tools/qstring.h#n536
>     
>     I don't know the clear reason for the text buffer in kdostartupconfig being initialized with 1024bytes. But I think my patch is the smallest change to avoid the side effects.

Whay about trimming first the QByteArray?


- Aleix


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124877/#review84659
-----------------------------------------------------------


On Aug. 31, 2015, 6:33 p.m., Takahiro Hashimoto wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124877/
> -----------------------------------------------------------
> 
> (Updated Aug. 31, 2015, 6:33 p.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Bugs: 351609
>     https://bugs.kde.org/show_bug.cgi?id=351609
> 
> 
> Repository: plasma-workspace
> 
> 
> Description
> -------
> 
> Building Plasma5 with Qt 5.6 branch, kstartupconfig5/kdostartupconfig5 generates corrupted files.
> 
> $HOME/.config/startupconfigfiles
> $HOME/.config/startupconfig
> 
> 
> Diffs
> -----
> 
>   startkde/kstartupconfig/kdostartupconfig.cpp 3944c06 
> 
> Diff: https://git.reviewboard.kde.org/r/124877/diff/
> 
> 
> Testing
> -------
> 
> works for me. 
> 
> 1. execute kstartupconfig5
> 2. check if both files are not corrupted.
> 
> 
> Thanks,
> 
> Takahiro Hashimoto
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20150902/4c786779/attachment.html>


More information about the Plasma-devel mailing list