summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-03-05 15:03:52 -0600
committerSlávek Banko <slavek.banko@axis.cz>2012-06-03 03:26:56 +0200
commita7dff39a3f3b09ae2ac98dfec0b4386de053b3a1 (patch)
tree4177bf1e0c78323e2398173f96f0710127ea577c
parent497b2f091165679f85baac76a99a65a80b40ab68 (diff)
downloadtdebase-a7dff39a3f3b09ae2ac98dfec0b4386de053b3a1.tar.gz
tdebase-a7dff39a3f3b09ae2ac98dfec0b4386de053b3a1.zip
Fix kdm logfile growing rapidly under certain conditions
(cherry picked from commit 696fe6318f5758b5a4aef724444bbf18b860469c)
-rw-r--r--kdm/kfrontend/kgapp.cpp3
-rw-r--r--tsak/main.cpp3
2 files changed, 5 insertions, 1 deletions
diff --git a/kdm/kfrontend/kgapp.cpp b/kdm/kfrontend/kgapp.cpp
index b9461dbdf..83d88c64a 100644
--- a/kdm/kfrontend/kgapp.cpp
+++ b/kdm/kfrontend/kgapp.cpp
@@ -196,10 +196,11 @@ kg_main( const char *argv0 )
if (trinity_desktop_lock_use_sak) {
tsak = new KProcess;
*tsak << TQCString( argv0, strrchr( argv0, '/' ) - argv0 + 2 ) + "tsak";
- tsak->start(KProcess::Block);
+ tsak->start(KProcess::Block, KProcess::AllOutput);
}
if (tsak) {
tsak->closeStdin();
+ tsak->closeStdout();
tsak->detach();
delete tsak;
}
diff --git a/tsak/main.cpp b/tsak/main.cpp
index 3cbc3d81a..ec23dd181 100644
--- a/tsak/main.cpp
+++ b/tsak/main.cpp
@@ -357,6 +357,9 @@ int main (int argc, char *argv[])
int current_keyboard;
bool can_proceed;
+ // Ignore SIGPIPE
+ signal(SIGPIPE, SIG_IGN);
+
for (i=0; i<MAX_KEYBOARDS; i++) {
child_pids[i] = 0;
}