From 8bf4a0465e81da877e0c81620ae4ac9356145fc9 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Tue, 30 Apr 2013 12:27:41 +0200 Subject: ui-snapshot: do not access $HOME It's a bit tedious to have to do this here too. If we encounter other issues with $HOME down the line, I'll look into adding some nice utility functions to handle this, or perhaps giving up on the hope that we could keep $HOME defined for scripts. This commit additionally adds a test case, should the issue surface again. Signed-off-by: Jason A. Donenfeld --- tests/t0109-gitconfig.sh | 1 + ui-snapshot.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/tests/t0109-gitconfig.sh b/tests/t0109-gitconfig.sh index 24b2942..c9d16a2 100755 --- a/tests/t0109-gitconfig.sh +++ b/tests/t0109-gitconfig.sh @@ -37,5 +37,6 @@ test_no_home_access_success foo/tree/file-1 test_no_home_access_success foo/commit test_no_home_access_success foo/diff test_no_home_access_success foo/patch +test_no_home_access_success foo/snapshot/master.tar.gz test_done diff --git a/ui-snapshot.c b/ui-snapshot.c index 42b7489..8a72080 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c @@ -16,6 +16,7 @@ static int write_archive_type(const char *format, const char *hex, const char *p { struct argv_array argv = ARGV_ARRAY_INIT; const char **nargv; + char *user_home, *xdg_home; int result; argv_array_push(&argv, "snapshot"); argv_array_push(&argv, format); @@ -38,7 +39,15 @@ static int write_archive_type(const char *format, const char *hex, const char *p /* argv_array guarantees a trailing NULL entry. */ memcpy(nargv, argv.argv, sizeof(char *) * (argv.argc + 1)); + user_home = getenv("HOME"); + xdg_home = getenv("XDG_CONFIG_HOME"); + unsetenv("HOME"); + unsetenv("XDG_CONFIG_HOME"); result = write_archive(argv.argc, nargv, NULL, 1, NULL, 0); + if (user_home) + setenv("HOME", user_home, 1); + if (xdg_home) + setenv("XDG_CONFIG_HOME", xdg_home, 1); argv_array_clear(&argv); free(nargv); return result; -- cgit 1.4.1 on>
Commit message (Collapse)Author
2019-02-22Fix name of <raw> window in man pageJune McEnroe
2019-02-22Rename global tags with angle bracketsJune McEnroe
2019-02-22Show status window while connectingJune McEnroe
2019-02-22Reorganize UI code for the umpteenth timeJune McEnroe
It's actually in a good state now, I think.
2019-02-21Replace "view" with "window"June McEnroe
I think originally I didn't want to use the same word as curses WINDOW but it's really much clearer for the user if they're just called windows. UI code probably needs yet another rewrite though. Still feels messy.
2019-02-21Remove ROT13June McEnroe
It's just not convenient when it can only do the whole line...
2019-02-21Clean up man pageJune McEnroe
2019-01-26Draw UI before connectingJune McEnroe
Otherwise the "Traveling" message isn't visible while connecting.
2019-01-25Avoid unused variable warnings with getyxJune McEnroe
2019-01-25Add GNU/Linux build instructionsJune McEnroe