¡Hola Johannes! El 2016-11-11 a las 11:01 +0100, Maximiliano Curia escribió:
I'm attaching it, please let me know if you can test this.
Ups, here it goes. -- "Politicians and diapers have one thing in common. They should both be changed regularly, and for the same reason." ― José Maria de Eça de Queiroz Saludos /\/\ /\ >< `/
From: Maximiliano Curia <maxy@gnuservers.com.ar>
Date: Fri, 11 Nov 2016 10:23:38 +0100
Subject: handle reading from a closed file handle
---
 src/daemon/XorgDisplayServer.cpp | 6 ++++++
 1 file changed, 6 insertions(+)
diff --git a/src/daemon/XorgDisplayServer.cpp b/src/daemon/XorgDisplayServer.cpp
index d06d89a..72ba640 100644
--- a/src/daemon/XorgDisplayServer.cpp
+++ b/src/daemon/XorgDisplayServer.cpp
@@ -188,6 +188,12 @@ namespace SDDM {
                 return false;
             }
             QByteArray displayNumber = readPipe.readLine();
+            if (displayNumber.isEmpty()) {
+                // the file descriptor was closed without a display number,
+                // the X has probably died.
+                close(pipeFds[0]);
+                return false;
+            }
             displayNumber.prepend(QByteArray(":"));
             displayNumber.remove(displayNumber.size() -1, 1); //trim trailing whitespace
             m_display = QString::fromLocal8Bit(displayNumber);
Attachment:
signature.asc
Description: PGP signature