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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On May 13th, 2015, 2:49 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;">Has DBusMenuQt been fixed? Or is it beyond our reach for a weird reason?</p></pre>
 </blockquote>




 <p>On May 13th, 2015, 2:50 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;">PS: I don't mind the workaround as long as we fix upstream too.</p></pre>
 </blockquote>








</blockquote>

<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;">Two hold ups</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">1) I already have some a clearly perfect pending patch for libdbusmenu-qt that patch up some memory that haven't seen any response. If that doesn't get a merge it's hard to see how anything else will.
It's in that classic frustrating state of being maintained by someone who is now inactive without a clear successor.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">2) The best fix involves changing their API, so I'd need to make a dbusmenu-qt 0.5, breaking any other client then potentially #ifdef this code to support both</p></pre>
<br />










<p>- David</p>


<br />
<p>On May 13th, 2015, 1:39 a.m. UTC, David Edmundson 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 Plasma.</div>
<div>By David Edmundson.</div>


<p style="color: grey;"><i>Updated May 13, 2015, 1:39 a.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
plasma-workspace
</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;">DBusMenuImporter by default connects QMenu::aboutToShow to a private
slot slotMenuAboutToShow,
in this slot it reloads the menu befre it gets shown
because the menu shows just after aboutToShow() returns DBusMenuQt in
it's infinite wisdom spawns a new event loop to
block the QMenu processing till we get the network reply</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Not only is this rather pointless as all uses in Plamsa calls
updateMenu() before showing, so we fetch the menu twice
it also leads to all sorts of crazy crashes as when we process all other
events we might delete the menu from within QMenu emitting aboutToShow()
which is a very unexpected thing to do as QMenu::popup ends up with 'this' being destroyed halfway through it's
frame.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">BUG: 343971
BUG: 345838
BUG: 345933</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Ideal fix is in DBusMenuQt, and I /hate/ doing workarounds, but I can't see how to solve it without <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">significantly</em> changing the API.</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Opened steam
closed steam from menu
quickly click on the SNI before it exits.
Used to crash. Now doesn't.</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>dataengines/statusnotifieritem/statusnotifieritemsource.cpp <span style="color: grey">(b6a50279c01076e7242afaf93d1769348ba031ba)</span></li>

</ul>

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






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







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