diff options
author | Simon Rettberg | 2014-02-07 14:47:54 +0100 |
---|---|---|
committer | Simon Rettberg | 2014-02-07 14:47:54 +0100 |
commit | 0d5f4f33c46fdfda1f8a08e41dbe63711b00dd50 (patch) | |
tree | 5b988b0205f28c4c985cc89bc82b6b4adfb9d84b /src/pwgui/main.cpp | |
parent | Getting there, slowly: (diff) | |
download | printergui-0d5f4f33c46fdfda1f8a08e41dbe63711b00dd50.tar.gz printergui-0d5f4f33c46fdfda1f8a08e41dbe63711b00dd50.tar.xz printergui-0d5f4f33c46fdfda1f8a08e41dbe63711b00dd50.zip |
Implement writing filled out form back to pipe
Diffstat (limited to 'src/pwgui/main.cpp')
-rw-r--r-- | src/pwgui/main.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/pwgui/main.cpp b/src/pwgui/main.cpp index c33b3f6..77ec7f0 100644 --- a/src/pwgui/main.cpp +++ b/src/pwgui/main.cpp @@ -126,6 +126,8 @@ int main(int argc, char *argv[]) // Seems we need the dialog int status; + char creds[NAMELEN], *pass = NULL; + snprintf(creds, NAMELEN, "%s", argv[3]); do { int pfd[2]; if (pipe(pfd) != 0) { @@ -139,7 +141,7 @@ int main(int argc, char *argv[]) helper_dropprivs(); helper_copyenv(); QApplication a(argc, argv); - PwGui w(pfd[1]); + PwGui w(pfd[1], creds); w.show(); exit(a.exec()); return CUPS_BACKEND_FAILED; @@ -147,8 +149,8 @@ int main(int argc, char *argv[]) // Main (Parent) close(pfd[1]); // Read from pipe - char creds[NAMELEN], *pass = NULL; int bytes = read(pfd[0], creds, NAMELEN - 1); + close(pfd[0]); // Wait for child to die waitpid(pid, NULL, 0); // Don't check status, just look at pipe data if (bytes <= 0) { |