diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-04-22 21:41:57 -0500 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-04-22 21:41:57 -0500 |
commit | edf3004ec3bd7bf7d2d1c3074281ce22188f3e35 (patch) | |
tree | 87b6c6d4a732beda0f8777fcade7df18e8825e3b /tdm | |
parent | f003ff9cd0cc743c13cb0b15e03e2c09cc53e8c1 (diff) | |
download | tdebase-edf3004ec3bd7bf7d2d1c3074281ce22188f3e35.tar.gz tdebase-edf3004ec3bd7bf7d2d1c3074281ce22188f3e35.zip |
Fix secondary thread termination
This resolves the remainder of Bug 1467
Diffstat (limited to 'tdm')
-rw-r--r-- | tdm/kfrontend/kgreeter.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tdm/kfrontend/kgreeter.cpp b/tdm/kfrontend/kgreeter.cpp index 2111a1e9d..9bcf60eb5 100644 --- a/tdm/kfrontend/kgreeter.cpp +++ b/tdm/kfrontend/kgreeter.cpp @@ -1259,6 +1259,7 @@ void ControlPipeHandlerObject::run(void) { while (1) { if ((mKGreeterParent && (mKGreeterParent->closingDown)) || (mSAKDlgParent && (mSAKDlgParent->closingDown))) { ::unlink(mPipeFilename.ascii()); + TQApplication::eventLoop()->exit(-1); return; } @@ -1297,6 +1298,7 @@ void ControlPipeHandlerObject::run(void) { if ((file_mode != 600) || (buffer.st_uid != 0) || (buffer.st_gid != 0)) { ::unlink(mPipeFilename.ascii()); printf("[WARNING] Possible security breach! Please check permissions on " FIFO_DIR " (must be 600 and owned by root/root, got %d %d/%d). Not listening for login credentials on remote control socket.\n", file_mode, buffer.st_uid, buffer.st_gid); fflush(stdout); + TQApplication::eventLoop()->exit(-1); return; } } @@ -1327,6 +1329,7 @@ void ControlPipeHandlerObject::run(void) { } if ((mKGreeterParent && (mKGreeterParent->closingDown)) || (mSAKDlgParent && (mSAKDlgParent->closingDown))) { ::unlink(mPipeFilename.ascii()); + TQApplication::eventLoop()->exit(-1); return; } @@ -1338,10 +1341,12 @@ void ControlPipeHandlerObject::run(void) { } else { ::unlink(mPipeFilename.ascii()); + TQApplication::eventLoop()->exit(-1); return; } } } + TQApplication::eventLoop()->exit(-1); } #include "kgreeter.moc" |