[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-frameworks-devel
Subject:    Re: Review Request 129259: Fix the buffersize in certain situations.
From:       taro yamada <archer_ame () yahoo ! co ! jp>
Date:       2016-10-27 15:02:49
Message-ID: 20161027150249.9507.43849 () mimi ! kde ! org
[Download RAW message or body]

--===============5128950541025479509==
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit


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

(Updated Oct. 27, 2016, 3:02 p.m.)


Review request for KDE Frameworks.


Changes
-------

changed to use qBound to determine the initial buffersize.


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 (updated)
-----

  src/ioslaves/file/file.cpp 8b17d31 

Diff: https://git.reviewboard.kde.org/r/129259/diff/


Testing
-------


Thanks,

taro yamada


--===============5128950541025479509==
MIME-Version: 1.0
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit




<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 \
solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">  \
<tr>  <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/129259/">https://git.reviewboard.kde.org/r/129259/</a>
  </td>
    </tr>
   </table>
   <br />




<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: \
1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; \
-webkit-border-radius: 6px;">  <tr>
  <td>

<div>Review request for KDE Frameworks.</div>
<div>By taro yamada.</div>


<p style="color: grey;"><i>Updated Oct. 27, 2016, 3:02 p.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">changed to use qBound to determine the initial \
buffersize.</p></pre>  </td>
 </tr>
</table>





<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://bugs.kde.org/show_bug.cgi?id=369275">369275</a>


</div>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kio
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Currently, KIO uses lstat to get the buffersize for \
readlink. But in certain situations, it returns inappropriate value.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">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.</p> <p style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: inherit;">This patch changes the buffersize to \
1024 bytes if it is 0. And later truncate it to actual size.</p></pre>
  </td>
 </tr>
</table>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> \
(updated)</h1> <ul style="margin-left: 3em; padding-left: 0;">

 <li>src/ioslaves/file/file.cpp <span style="color: grey">(8b17d31)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/129259/diff/" style="margin-left: \
3em;">View Diff</a></p>






  </td>
 </tr>
</table>



  </div>
 </body>
</html>


--===============5128950541025479509==--


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic