about summary refs log tree commit diff
path: root/ui-snapshot.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2013-04-30 12:27:41 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2013-04-30 12:29:07 +0200
commit8bf4a0465e81da877e0c81620ae4ac9356145fc9 (patch)
tree502c36d0641013bed2c3832963968ec6f13737cf /ui-snapshot.c
parentt0001: validate Git -rcN version numbers correctly (diff)
downloadcgit-pink-8bf4a0465e81da877e0c81620ae4ac9356145fc9.tar.gz
cgit-pink-8bf4a0465e81da877e0c81620ae4ac9356145fc9.zip
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 <Jason@zx2c4.com>
Diffstat (limited to '')
-rw-r--r--ui-snapshot.c9
1 files changed, 9 insertions, 0 deletions
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;
ass='logmsg'> https://www.gnu.org/licenses/gpl-faq.en.html#GPLIncompatibleLibs 2020-05-22Perform all migrations in one transaction 1.3June McEnroe 2020-05-21Clean up unscoop manual pageJune McEnroe 2020-05-21Fix search expression appendJune McEnroe Oops. 2020-05-21Fix dbPrepare errx callJune McEnroe 2020-05-21Add only the necessary expressions to scoop's queryJune McEnroe This makes the queries generally faster and capable of taking advantage of any indexes that get created. 2020-05-21Explicitly set stdout line buffered when pagingJune McEnroe 2020-05-21Do not sort results in scoop by defaultJune McEnroe The -s flag now enables sorting (-g and -l also imply it), while the -S flag now launches the sqlite3 shell. Avoiding sorting by default is much faster and less memory-intensive as it doesn't require loading the entire result set into memory at once. 2020-05-21Expand and clarify documentationJune McEnroe 2020-05-21Execute PAGER with the SHELLJune McEnroe Same as how git executes it. Allows flags to be set in PAGER. 2020-05-21Automatically perform database migrations in litterboxJune McEnroe To simplify upgrades, restarting litterbox should be sufficient. The database can still be explicitly migrated with -m. 2020-05-20Don't install rc scripts on other platformsJune McEnroe Oops, meant to do this in the last commit. 2020-05-20Rewrite build and install like pounce 1.3June McEnroe man pages are no longer compressed! 2020-05-20Update email addressesJune McEnroe 2020-04-23Call updateConsumer from handleError 1.2p1June McEnroe This should prevent continually crashing on the same ERROR in the pounce buffer. 2020-04-20Use . as ${LDLIBS.$@} separatorJune McEnroe 2020-04-05Error on invalid ISUPPORT values 1.2June McEnroe 2020-04-05Only set RCS on FreeBSDJune McEnroe 2020-04-05Log bans and unbansJune McEnroe 2020-04-05Parse mode types from ISUPPORTJune McEnroe 2020-04-05Add unscoop matchers for ban/unban eventsJune McEnroe The IRC and Textual matchers miss bans mixed with other mode changes, but those are rare. 2020-04-05Check unscoop regexps with make testJune McEnroe 2020-04-05Add unscoop -n flag for checking regexpsJune McEnroe 2020-04-05Add Ban and Unban event typesJune McEnroe 2020-04-02Update styleJune McEnroe Replacing declarations followed by while loops with for loops and generating the short option string from the long options. 2020-03-31Update unscoop catgirl matchersJune McEnroe I'm not concerned about keeping the old matchers since I'm almost entirely certain I was the only one who ever used the old version of catgirl, and I already imported those logs. 2020-03-31Fix writing verbose to stderrJune McEnroe 2020-03-02Include <>/-/* around nicks in scoop coloring 1.1June McEnroe 2020-03-02Replace .mk files with configure scriptJune McEnroe 2020-02-28Implement the causal.agency/consumer capabilityJune McEnroe 2020-02-22Include <>/-/* around nicks in coloringJune McEnroe 2020-02-22Use (almost) the full range of IRC colors for nicksJune McEnroe