----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/129259/#review100282 -----------------------------------------------------------
src/ioslaves/file/file.cpp (line 790) <https://git.reviewboard.kde.org/r/129259/#comment67330> I don't think we should use buff.st_size at all. We now know that on "virtual" filesystems, the link's reported size is basically useless for this purpose. In the case I reported in the bug, we are allocating 2 GiB just to read a measly file path. We should just always start with a small constant (maybe 1024 is fine), and then increase as necessary. - Jonathan Doman On Oct. 25, 2016, 9:51 a.m., taro yamada wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/129259/ > ----------------------------------------------------------- > > (Updated Oct. 25, 2016, 9:51 a.m.) > > > Review request for KDE Frameworks. > > > Bugs: 369275 > https://bugs.kde.org/show_bug.cgi?id=369275 > > > Repository: kio > > > Description > ------- > > Currently, KIO uses lstat to get the buffersize for readlink. > But in certain situations, it returns inappropriate value. > > For example, "/proc/self" or "/sys/bus/cpu/devices/*" returns its size is 0 , > and then readlink fails with EINVAL.(so link won't be shown in kde > application.) > TMSU seems it returns its target's actual filesize insted of the link's > filesize itself. > > This patch changes the buffersize to 1024 bytes if it is 0. > And later truncate it to actual size. > > > Diffs > ----- > > src/ioslaves/file/file.cpp 8b17d31 > > Diff: https://git.reviewboard.kde.org/r/129259/diff/ > > > Testing > ------- > > > Thanks, > > taro yamada > >