Merge /fml/ag-raetsch/home/maan/scm/paraslash_meins/paraslash/
[paraslash.git] / gui.c
diff --git a/gui.c b/gui.c
index 2513db6d4ad17746af1ece48e2b9b4a21a1efbac..7588f2b2ec7f7136962c4d5b4b7b086ff1648b17 100644 (file)
--- a/gui.c
+++ b/gui.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 1998-2006 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 1998-2007 Andre Noll <maan@systemlinux.org>
  *
  *     This program is free software; you can redistribute it and/or modify
  *     it under the terms of the GNU General Public License as published by
@@ -25,6 +25,7 @@
 #include "string.h"
 #include "fd.h"
 #include "error.h"
+#include "signal.h"
 
 /** define the array of error lists needed by para_gui */
 INIT_GUI_ERRLISTS;
@@ -988,6 +989,7 @@ static int client_cmd_cmdline(char *cmd)
        if (ret < 0)
                return -1;
        command_pipe = fds[1];
+       mark_fd_nonblock(command_pipe);
        return send_output();
 }
 
@@ -1003,6 +1005,7 @@ static int display_cmd(char *cmd)
        if (para_exec_cmdline_pid(&cmd_pid, cmd, fds) < 0)
                return -1;
        command_pipe = fds[1];
+       mark_fd_nonblock(command_pipe);
        return send_output();
 }
 
@@ -1165,7 +1168,7 @@ static void com_reread_conf(void)
        PARA_INFO_LOG("%s", "rereading command line options and config file");
        gui_cmdline_parser(_argc, _argv, &conf);
        gui_cmdline_parser_configfile(cf, &conf, 1, 1, 0);
-       PARA_NOTICE_LOG("%s", "configuration read");
+       PARA_NOTICE_LOG("%s", "config file reloaded");
        if (check_key_map_args() < 0)
                finish(EXIT_FAILURE);
 }
@@ -1326,6 +1329,7 @@ int main(int argc, char *argv[])
                fprintf(stderr, "parse error while reading command line\n");
                exit(EXIT_FAILURE);
        }
+       HANDLE_VERSION_FLAG("gui", conf);
        init_theme(0, &theme);
        top.lines = theme.top_lines_default;
        if (check_key_map_args() < 0) {