<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/121889/">https://git.reviewboard.kde.org/r/121889/</a>
     </td>
    </tr>
   </table>
   <br />










<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On January 7th, 2015, 12:42 p.m. UTC, <b>Milian Wolff</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  


<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="https://git.reviewboard.kde.org/r/121889/diff/1/?file=338732#file338732line108" style="color: black; font-weight: bold; text-decoration: underline;">language/duchain/navigation/abstractnavigationcontext.cpp</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </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; ">QString AbstractNavigationContext::createLink(const QString& name, QString targetId, const NavigationAction& action)</pre></td>

  </tr>
 </tbody>



 
 

 <tbody>

  <tr>
    <th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">108</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">ret</span> <span class="o">=</span>  <span class="s">"<a href=</span><span class="se">\"</span><span class="s">"</span> <span class="o">+</span> <span class="n">targetId</span> <span class="o">+</span> <span class="s">"</span><span class="se">\"</span><span class="s">"</span> <span class="o">+</span> <span class="p">((</span><span class="n">m_linkCount</span> <span class="o">==</span> <span class="n">m_selectedLink</span> <span class="o">&&</span> <span class="n">m_currentPositionLine</span> <span class="o">==</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="o">?</span> <span class="n">QString</span><span class="p">(</span><span class="s">" name = </span><span class="se">\"</span><span class="s">currentPosition</span><span class="se">\"</span><span class="s">"</span><span class="p">)</span> <span class="o">:</span> <span class="n">QString</span><span class="p">())</span> <span class="o">+</span> <span class="s">">"</span> <span class="o">+</span> <span class="n">str</span> <span class="o">+</span> <span class="s">"</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">108</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">ret</span> <span class="o">=</span>  <span class="s">"<a href=</span><span class="se">\"</span><span class="s">"</span> <span class="o">+</span> <span class="n">targetId</span> <span class="o">+</span> <span class="s">"</span><span class="se">\"</span><span class="s">"</span> <span class="o">+</span> <span class="p">((</span><span class="n">m_linkCount</span> <span class="o">==</span> <span class="n">m_selectedLink</span> <span class="o">&&</span> <span class="n">m_currentPositionLine</span> <span class="o">==</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="o">?</span> <span class="n">QString<span class="hl">Literal</span></span><span class="p">(</span><span class="s">" name = </span><span class="se">\"</span><span class="s">currentPosition</span><span class="se">\"</span><span class="s">"</span><span class="p">)</span> <span class="o">:</span> <span class="n">QString</span><span class="p">())</span> <span class="o">+</span> <span class="s">">"</span> <span class="o">+</span> <span class="n">str</span> <span class="o">+</span> <span class="s">"</a>"</span><span class="p">;</span></pre></td>
  </tr>

 </tbody>

</table>

  <pre style="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;">the QStringLiteral and QString() could be replaced by plain string literals here, I guess. Or QLatin1String.</p></pre>
 </blockquote>



 <p>On January 9th, 2015, 12:15 a.m. UTC, <b>Aleix Pol Gonzalez</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="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;">Not really, in fact we should change all bare string literals into QStringLiteral(), otherwise we're not taking advantage of the magic performant stuff. I wouldn't do any of that though, because it will be lots of boring work for no gain.</p></pre>
 </blockquote>







</blockquote>
<pre style="margin-left: 1em; 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;">Nope, that is not true. When you do concatenation of strings, using QStringLiteral is actually slightly worse. Rather, one should use QLatin1String in such cases. Or just plain string literals when that is not forbidden. QStringLiteral is only good when you actually need a QString, i.e. when you use it as-is.</p></pre>
<br />




<p>- Milian</p>


<br />
<p>On January 9th, 2015, 12:15 a.m. UTC, Aleix Pol Gonzalez wrote:</p>









<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 KDevelop.</div>
<div>By Aleix Pol Gonzalez.</div>


<p style="color: grey;"><i>Updated Jan. 9, 2015, 12:15 a.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kdevplatform
</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;">It's a correct change, it shouldn't have a big impact but it's the way to go.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Sending for review also to agree that it's how we want it.</p></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>serialization/tests/bench_itemrepository.cpp <span style="color: grey">(9c93ed9)</span></li>

 <li>plugins/quickopen/tests/test_quickopen.cpp <span style="color: grey">(5a65c69)</span></li>

 <li>plugins/reviewboard/reviewboardjobs.cpp <span style="color: grey">(903f38d)</span></li>

 <li>plugins/reviewboard/reviewboardplugin.cpp <span style="color: grey">(00b8908)</span></li>

 <li>plugins/reviewboard/tests/main.cpp <span style="color: grey">(fb7f587)</span></li>

 <li>plugins/standardoutputview/tests/test_standardoutputview.cpp <span style="color: grey">(8159560)</span></li>

 <li>project/tests/projectmodelperformancetest.cpp <span style="color: grey">(872239c)</span></li>

 <li>project/tests/test_projectmodel.cpp <span style="color: grey">(4a34c8f)</span></li>

 <li>serialization/itemrepository.h <span style="color: grey">(dcf39d6)</span></li>

 <li>serialization/itemrepositoryregistry.cpp <span style="color: grey">(57358ad)</span></li>

 <li>serialization/tests/test_indexedstring.cpp <span style="color: grey">(896449e)</span></li>

 <li>shell/documentcontroller.cpp <span style="color: grey">(8b3fde4)</span></li>

 <li>shell/workingsetcontroller.cpp <span style="color: grey">(84e5daa)</span></li>

 <li>shell/workingsets/workingset.cpp <span style="color: grey">(9d14f3e)</span></li>

 <li>sublime/idealbuttonbarwidget.cpp <span style="color: grey">(284227f)</span></li>

 <li>sublime/idealdockwidget.cpp <span style="color: grey">(2de64d1)</span></li>

 <li>sublime/mainwindow.cpp <span style="color: grey">(9613d59)</span></li>

 <li>sublime/tests/test_aggregatemodel.cpp <span style="color: grey">(79642ce)</span></li>

 <li>sublime/tests/test_areaoperation.cpp <span style="color: grey">(44b078a)</span></li>

 <li>sublime/tests/test_areawalker.cpp <span style="color: grey">(bcf41c7)</span></li>

 <li>sublime/tests/test_toolviewtoolbar.cpp <span style="color: grey">(0c1bdd4)</span></li>

 <li>sublime/tests/test_viewactivation.cpp <span style="color: grey">(09bf4ad)</span></li>

 <li>template/filters/kdevfilters.cpp <span style="color: grey">(ef6bebc)</span></li>

 <li>tests/json/jsondeclarationtests.h <span style="color: grey">(dc78a81)</span></li>

 <li>tests/json/jsontesthelpers.h <span style="color: grey">(0877f76)</span></li>

 <li>tests/testhelpers.h <span style="color: grey">(f397cd3)</span></li>

 <li>util/environmentgrouplist.cpp <span style="color: grey">(1f6668a)</span></li>

 <li>util/tests/test_embeddedfreetree.cpp <span style="color: grey">(c28bbfd)</span></li>

 <li>util/tests/test_path.cpp <span style="color: grey">(77d3382)</span></li>

 <li>vcs/dvcs/ui/dvcsimportmetadatawidget.h <span style="color: grey">(d25ff0d)</span></li>

 <li>vcs/models/vcsannotationmodel.cpp <span style="color: grey">(860d0d2)</span></li>

 <li>debugger/breakpoint/breakpoint.cpp <span style="color: grey">(eb2b307)</span></li>

 <li>debugger/framestack/framestackwidget.cpp <span style="color: grey">(2253876)</span></li>

 <li>debugger/variable/variablewidget.cpp <span style="color: grey">(0203932)</span></li>

 <li>language/codecompletion/codecompletionitem.cpp <span style="color: grey">(307ad07)</span></li>

 <li>language/codecompletion/normaldeclarationcompletionitem.cpp <span style="color: grey">(a62bf23)</span></li>

 <li>language/codegen/codegenerator.cpp <span style="color: grey">(1dbe75a)</span></li>

 <li>language/codegen/coderepresentation.cpp <span style="color: grey">(6e21a38)</span></li>

 <li>language/codegen/documentchangeset.cpp <span style="color: grey">(ac38d30)</span></li>

 <li>language/codegen/sourcefiletemplate.h <span style="color: grey">(ad1a4b8)</span></li>

 <li>language/codegen/tests/test_templateclassgenerator.cpp <span style="color: grey">(286aae2)</span></li>

 <li>language/codegen/tests/test_templaterenderer.cpp <span style="color: grey">(47b2da0)</span></li>

 <li>language/codegen/tests/test_templatesmodel.cpp <span style="color: grey">(5a562c4)</span></li>

 <li>language/duchain/aliasdeclaration.cpp <span style="color: grey">(d2f35dc)</span></li>

 <li>language/duchain/classfunctiondeclaration.cpp <span style="color: grey">(dc02cb4)</span></li>

 <li>language/duchain/declaration.cpp <span style="color: grey">(24d9436)</span></li>

 <li>language/duchain/declarationid.cpp <span style="color: grey">(8331046)</span></li>

 <li>language/duchain/dumpdotgraph.cpp <span style="color: grey">(e5fa172)</span></li>

 <li>language/duchain/functiondeclaration.cpp <span style="color: grey">(03a46ee)</span></li>

 <li>language/duchain/namespacealiasdeclaration.cpp <span style="color: grey">(a66afd7)</span></li>

 <li>language/duchain/navigation/abstractdeclarationnavigationcontext.cpp <span style="color: grey">(9711591)</span></li>

 <li>language/duchain/navigation/abstractincludenavigationcontext.cpp <span style="color: grey">(4101ec3)</span></li>

 <li>language/duchain/navigation/abstractnavigationcontext.cpp <span style="color: grey">(3020c4c)</span></li>

 <li>language/duchain/navigation/problemnavigationcontext.cpp <span style="color: grey">(60fa7cf)</span></li>

 <li>language/duchain/navigation/useswidget.cpp <span style="color: grey">(4f4258a)</span></li>

 <li>language/duchain/problem.cpp <span style="color: grey">(39224df)</span></li>

 <li>language/duchain/tests/bench_hashes.cpp <span style="color: grey">(8d40349)</span></li>

 <li>language/duchain/tests/test_duchain.cpp <span style="color: grey">(0430ffc)</span></li>

 <li>language/duchain/tests/test_duchainshutdown.cpp <span style="color: grey">(0f71e1e)</span></li>

 <li>language/duchain/tests/test_identifier.cpp <span style="color: grey">(a63b3a4)</span></li>

 <li>language/duchain/topducontext.cpp <span style="color: grey">(64e91d1)</span></li>

 <li>language/duchain/topducontextdynamicdata.cpp <span style="color: grey">(18272c6)</span></li>

 <li>language/duchain/types/arraytype.cpp <span style="color: grey">(ba8fee7)</span></li>

 <li>language/duchain/types/constantintegraltype.cpp <span style="color: grey">(21ad4fd)</span></li>

 <li>language/duchain/types/functiontype.cpp <span style="color: grey">(960c8c9)</span></li>

 <li>language/duchain/types/pointertype.cpp <span style="color: grey">(b44b80a)</span></li>

 <li>language/duchain/types/structuretype.cpp <span style="color: grey">(ebe94b7)</span></li>

 <li>language/editor/modificationrevision.cpp <span style="color: grey">(1dd88f2)</span></li>

 <li>language/util/setrepository.cpp <span style="color: grey">(59aee21)</span></li>

 <li>outputview/outputexecutejob.cpp <span style="color: grey">(c1e7f01)</span></li>

 <li>outputview/tests/test_filteringstrategy.cpp <span style="color: grey">(ec457c3)</span></li>

 <li>outputview/tests/test_outputmodel.cpp <span style="color: grey">(e8b6226)</span></li>

 <li>outputview/tests/testlinebuilderfunctions.h <span style="color: grey">(6a24c87)</span></li>

 <li>plugins/appwizard/appwizardplugin.cpp <span style="color: grey">(27640b8)</span></li>

 <li>plugins/appwizard/projectselectionpage.cpp <span style="color: grey">(c1f6dca)</span></li>

 <li>plugins/bazaar/bazaarutils.cpp <span style="color: grey">(ae68788)</span></li>

 <li>plugins/bazaar/bzrannotatejob.cpp <span style="color: grey">(458977d)</span></li>

 <li>plugins/bazaar/tests/test_bazaar.cpp <span style="color: grey">(062dc07)</span></li>

 <li>plugins/contextbrowser/contextbrowser.cpp <span style="color: grey">(5771c92)</span></li>

 <li>plugins/dashboard/dashboardview.cpp <span style="color: grey">(ba5e65d)</span></li>

 <li>plugins/documentswitcher/documentswitcherplugin.cpp <span style="color: grey">(e459237)</span></li>

 <li>plugins/executescript/executescriptplugin.cpp <span style="color: grey">(a9d6c86)</span></li>

 <li>plugins/externalscript/externalscriptitem.cpp <span style="color: grey">(2cf67ea)</span></li>

 <li>plugins/externalscript/externalscriptplugin.cpp <span style="color: grey">(8cccf71)</span></li>

 <li>plugins/filetemplates/tests/test_generationtest.cpp <span style="color: grey">(5b16436)</span></li>

 <li>plugins/genericprojectmanager/test/test_projectload.cpp <span style="color: grey">(c0b38f5)</span></li>

 <li>plugins/git/gitplugin.cpp <span style="color: grey">(194843a)</span></li>

 <li>plugins/git/tests/test_git.cpp <span style="color: grey">(8434e65)</span></li>

 <li>plugins/grepview/grepfindthread.cpp <span style="color: grey">(6fee476)</span></li>

 <li>plugins/openwith/openwithplugin.cpp <span style="color: grey">(cca73d9)</span></li>

 <li>plugins/projectfilter/tests/test_projectfilter.cpp <span style="color: grey">(96543a6)</span></li>

 <li>plugins/quickopen/projectfilequickopen.cpp <span style="color: grey">(9642a6e)</span></li>

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

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

 <li>shell/plugincontroller.cpp <span style="color: grey">(15f0443)</span></li>

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

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

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

 <li>shell/settings/sourceformattersettings.cpp <span style="color: grey">(2421bd1)</span></li>

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

 <li>shell/statusbar.cpp <span style="color: grey">(43642f4)</span></li>

 <li>shell/tests/test_shelldocumentoperation.cpp <span style="color: grey">(6da679e)</span></li>

 <li>shell/textdocument.cpp <span style="color: grey">(3e47a41)</span></li>

 <li>shell/uicontroller.cpp <span style="color: grey">(404d84c)</span></li>

</ul>

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






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








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