diff options
author | Robert Obermeier <obermert@iis.fraunhofer.de> | 2017-05-10 14:20:04 +0200 |
---|---|---|
committer | Katja Marttila <katja.marttila@qt.io> | 2017-06-15 05:03:54 +0000 |
commit | ee435ce9227a3b87e1d29f098f72cb2a2ad6e6c0 (patch) | |
tree | b1dd74b006962610ab3ac236f552c71220e0b4cf /.qt-license-check.optional | |
parent | 67d17514707edda2341f11a09a6b22a0c506443a (diff) |
Adminauthorization freeze fixed under unix
This should fix x11 authorization livelock problems
causing the installer to freeze after password entry.
There might be unrelated issues causeing further freezes.
Further explanation:
If sudo does not terminate then closing stderr has no effect
in remoteserver.cpp and the loop in adminauthorization_x11.cpp
reading from pipedData will never terminate, causing the installer
to freeze.
It is important to close all references to stderr and terminate all
applications that do not close stderr themselves in the fork/exec
chain from adminauthorization_x11.cpp up to the remoteserver.
Remoteserver will close stderr in remoteserver.cpp.
Forking is done in main cause we can arrange it so that no threads
are running up to this point. If any thread were running we would
need to fork/exec in the child to be sure to restore a
semi-deterministic state.
Task-number: QTIFW-934
Change-Id: I87374d3ff195b42da0248c83aff020d373306d93
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Diffstat (limited to '.qt-license-check.optional')
0 files changed, 0 insertions, 0 deletions