<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="https://git.reviewboard.kde.org/r/118804/">https://git.reviewboard.kde.org/r/118804/</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="https://git.reviewboard.kde.org/r/118804/diff/1/?file=282063#file282063line92" style="color: black; font-weight: bold; text-decoration: underline;">ksmserver/screenlocker/logind.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; ">LogindIntegration::LogindIntegration(QObject *parent)</pre></td>

  </tr>
 </tbody>



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">92</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">takeControlReply</span><span class="p">.</span><span class="n">isValid</span><span class="p">())</span> <span class="p">{</span></pre></td>
  </tr>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">93</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span class="n">qDebug</span><span class="p">()</span> <span class="o"><<</span> <span class="s">"Failed to register as session leader: "</span> <span class="o"><<</span> <span class="n">takeControlReply</span><span class="p">.</span><span class="n">value</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;">This doesn't make sense.

you have "if the reply is invalid, print the value in the reply"

you want to be printing the takeControlReply.error in this case which will probably contain something useful.</pre>
</div>
<br />



<p>- David Edmundson</p>


<br />
<p>On June 17th, 2014, 11:53 p.m. UTC, Elias Probst wrote:</p>








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

<div>Review request for Plasma.</div>
<div>By Elias Probst.</div>


<p style="color: grey;"><i>Updated June 17, 2014, 11:53 p.m.</i></p>







<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=335390">335390</a>


</div>



<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;">This is an initial (not yet working) attempt to fix bug#335390.

Right now, it seems not to call the TakeControl() D-Bus message as it doesn't show up in systemd-logind's debug output at all:

Jun 17 21:20:05 moria systemd-logind[2550]: Got message type=signal sender=org.freedesktop.DBus destination=n/a object=/org/freedesktop/DBus interface=org.freedesktop.DBus member=NameOwnerChanged cookie=18 reply_cookie=0 error=n/a
Jun 17 21:20:05 moria systemd-logind[2550]: Got message type=method_call sender=:1.141 destination=org.freedesktop.login1 object=/org/freedesktop/login1 interface=org.freedesktop.login1.Manager member=GetSessionByPID cookie=4 reply_cookie=0 error=n/a
Jun 17 21:20:05 moria systemd-logind[2550]: Sent message type=error sender=n/a destination=:1.141 object=n/a interface=n/a member=n/a cookie=343 reply_cookie=4 error=PID 4296 does not belong to any known session
Jun 17 21:20:05 moria systemd-logind[2550]: Failed to process message [type=method_call sender=:1.141 path=/org/freedesktop/login1 interface=org.freedesktop.login1.Manager member=GetSessionByPID signature=u]: PID 4296 does not belong to any known session

The GetSessionByPID() call after this shows up just fine, but the TakeControl() attempt is not even logged.
The journal of ksmserver shows this code is actually executed:

Jun 17 21:20:05 moria ksmserver[2961]: Failed to register as session leader:  false

Is there something completely wrong the way I do it?</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;">- Copy /usr/lib/systemd/system/systemd-logind.service to /etc/systemd/system/systemd-logind.service
- Set "Environment=SYSTEMD_LOG_LEVEL=debug" in the [Service] section of /etc/systemd/system/systemd-logind.service
- Run "systemctl daemon-reload"
- Reboot (also possible without a reboot, but far more complicated and requires to terminate the X session anyways, so a reboot is the most straightforward solution)

To test
- apply patch + rebuild plasma-workspace
- kill ksmserver
- Run "journalctl -n 20 -f -u systemd-logind" to monitor logind
- Run "tail -f ~/.xsession-errors" or "journalctl --user -n 20 -f --user-unit ksmserver" (for systemd user-session users) to monitor ksmserver's output
- restart ksmserver

</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>ksmserver/screenlocker/logind.cpp <span style="color: grey">(dcfc7f321b3cf29ef68aac8006aa37f5e4e00956)</span></li>

</ul>

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







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








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