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









<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="http://git.reviewboard.kde.org/r/106945/diff/2/?file=92822#file92822line89" style="color: black; font-weight: bold; text-decoration: underline;">language/duchain/repositories/itemrepository.cpp</a>
    <span style="font-weight: normal;">

     (Diff revision 2)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">QMutex& ItemRepositoryRegistry::mutex() {</pre></td>

  </tr>
 </tbody>



 
 




 <tbody>

  <tr>
    <th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">89</font></th>
    <td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">      <span class="n">QString</span> <span class="n">specific<span class="hl">Dir</span></span> <span class="o">=</span> <span class="n"><span class="hl">baseDir</span></span> <span class="o">+</span> <span class="n">QString</span><span class="p">(</span><span class="s">"/%1"</span><span class="p">).</span><span class="n">arg</span><span class="p">(</span><span class="n">a</span><span class="p">);</span></pre></td>
    <th bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">76</font></th>
    <td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span class="n">QString</span> <span class="n">specificPath</span> <span class="o">=</span> <span class="n">repoPath</span> <span class="o">+</span> <span class="n">QString</span><span class="p">(</span><span class="s">"/%1"</span><span class="p">).</span><span class="n">arg</span><span class="p">(</span><span class="n">a</span><span class="p">);</span></pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Yes, the locking should be handled by the session. The session id is unique and you should never be able to run the same session multiple times, thus you also never should end up with more than the "0" folder in .cache/kdevduchain/{*}/.

And what do you mean by "global" one? The cache should be per-session and of course it is global per session. And you also confuse repositories with the cache location, no? The *files* in the folder are the repositories, the folder is just a central place to store them. And of course you can still have multiple files in there.</pre>
</div>
<br />



<p>- Milian</p>


<br />
<p>On October 29th, 2012, 2:19 p.m., Ivan Shapovalov wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for KDevelop and Milian Wolff.</div>
<div>By Ivan Shapovalov.</div>


<p style="color: grey;"><i>Updated Oct. 29, 2012, 2:19 p.m.</i></p>






<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;">1. Clean (rmdir) the per-session duchain store on session removal (particularly useful in unit-tests and their temporary sessions).
2. Partially refactor allocateRepository() (separate cache path compution into a different function, fix formatting, handle lockfiles properly)

Don't know if I've done that properly, but I wanted to avoid mentioning ".cache/kdevduchain" in two unrelated places.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </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;">Existing unit-tests and manual testing.</pre>
  </td>
 </tr>
</table>




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

 <li>language/duchain/repositories/itemrepository.h <span style="color: grey">(392847c)</span></li>

 <li>language/duchain/repositories/itemrepository.cpp <span style="color: grey">(8d559cf)</span></li>

 <li>shell/session.cpp <span style="color: grey">(a59d70e)</span></li>

</ul>

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




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








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