diff options
| author | Denys Vlasenko <dvlasenk@redhat.com> | 2011-03-08 14:07:33 +0100 |
|---|---|---|
| committer | Denys Vlasenko <dvlasenk@redhat.com> | 2011-03-08 14:07:33 +0100 |
| commit | abb11fca1bcd7932d14c911d63fb7c6c347dcbcd (patch) | |
| tree | 219ca2f09a7f8d7c310aca9456624a7f37b8716b /src/plugins | |
| parent | 077b157218254437185b5cb9d0267df72a918b79 (diff) | |
| download | abrt-abb11fca1bcd7932d14c911d63fb7c6c347dcbcd.tar.gz abrt-abb11fca1bcd7932d14c911d63fb7c6c347dcbcd.tar.xz abrt-abb11fca1bcd7932d14c911d63fb7c6c347dcbcd.zip | |
make fork_execv_on_steroids capable of setting env vars too
Before, it could only unset them.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'src/plugins')
| -rw-r--r-- | src/plugins/abrt-action-analyze-c.c | 2 | ||||
| -rw-r--r-- | src/plugins/abrt-action-generate-backtrace.c | 11 | ||||
| -rw-r--r-- | src/plugins/abrt-action-mailx.c | 2 |
3 files changed, 7 insertions, 8 deletions
diff --git a/src/plugins/abrt-action-analyze-c.c b/src/plugins/abrt-action-analyze-c.c index 5def9aa1..635a3316 100644 --- a/src/plugins/abrt-action-analyze-c.c +++ b/src/plugins/abrt-action-analyze-c.c @@ -63,7 +63,7 @@ static char *run_unstrip_n(const char *dump_dir_name, unsigned timeout_sec) args[1] = xasprintf("--core=%s/"FILENAME_COREDUMP, dump_dir_name); args[2] = (char*)"-n"; args[3] = NULL; - pid_t child = fork_execv_on_steroids(flags, args, pipeout, /*unsetenv_vec:*/ NULL, /*dir:*/ NULL, uid); + pid_t child = fork_execv_on_steroids(flags, args, pipeout, /*env_vec:*/ NULL, /*dir:*/ NULL, uid); free(args[1]); /* Bugs in unstrip or corrupted coredumps can cause it to enter infinite loop. diff --git a/src/plugins/abrt-action-generate-backtrace.c b/src/plugins/abrt-action-generate-backtrace.c index a8c18e36..7defc9c4 100644 --- a/src/plugins/abrt-action-generate-backtrace.c +++ b/src/plugins/abrt-action-generate-backtrace.c @@ -76,6 +76,11 @@ static char* exec_vp(char **args, uid_t uid, int redirect_stderr, int *status) "LC_MONETARY", "LC_NUMERIC", "LC_TIME", + /* Workaround for + * http://sourceware.org/bugzilla/show_bug.cgi?id=9622 + * (gdb emitting ESC sequences even with -batch) + */ + "TERM", NULL }; @@ -137,12 +142,6 @@ static char *get_backtrace(struct dump_dir *dd) char *executable = dd_load_text(dd, FILENAME_EXECUTABLE); dd_close(dd); - // Workaround for - // http://sourceware.org/bugzilla/show_bug.cgi?id=9622 - unsetenv("TERM"); - // This is not necessary - //putenv((char*)"TERM=dumb"); - char *args[21]; args[0] = (char*)"gdb"; args[1] = (char*)"-batch"; diff --git a/src/plugins/abrt-action-mailx.c b/src/plugins/abrt-action-mailx.c index 3debf449..06f81780 100644 --- a/src/plugins/abrt-action-mailx.c +++ b/src/plugins/abrt-action-mailx.c @@ -32,7 +32,7 @@ static void exec_and_feed_input(uid_t uid, const char* text, char **args) EXECFLG_INPUT | EXECFLG_QUIET | EXECFLG_SETGUID, args, pipein, - /*unsetenv_vec:*/ NULL, + /*env_vec:*/ NULL, /*dir:*/ NULL, uid); |
