diff options
author | LRN <lrn1986@gmail.com> | 2013-12-08 21:47:26 +0000 |
---|---|---|
committer | LRN <lrn1986@gmail.com> | 2013-12-08 21:47:26 +0000 |
commit | 06ab204142b7614583f85856b22bf0bbef8e92a9 (patch) | |
tree | ec57ede3808486c149428d80a5ab9ff26477deaf /src/testbed/gnunet-helper-testbed.c | |
parent | 12ea7cbb59260ee3b48b0f82a43ff96657e02ee8 (diff) | |
download | gnunet-06ab204142b7614583f85856b22bf0bbef8e92a9.tar.gz gnunet-06ab204142b7614583f85856b22bf0bbef8e92a9.zip |
Dup the envvar before unsetting, everywhere
Diffstat (limited to 'src/testbed/gnunet-helper-testbed.c')
-rw-r--r-- | src/testbed/gnunet-helper-testbed.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/testbed/gnunet-helper-testbed.c b/src/testbed/gnunet-helper-testbed.c index 42a459636..4c68b2cd4 100644 --- a/src/testbed/gnunet-helper-testbed.c +++ b/src/testbed/gnunet-helper-testbed.c | |||
@@ -406,9 +406,9 @@ tokenizer_cb (void *cls, void *client, | |||
406 | evstr = getenv (GNUNET_TESTING_PREFIX); | 406 | evstr = getenv (GNUNET_TESTING_PREFIX); |
407 | if (NULL != evstr) | 407 | if (NULL != evstr) |
408 | { | 408 | { |
409 | #ifdef WINDOWS | ||
410 | /* unsetting the variable will invalidate the pointer! */ | 409 | /* unsetting the variable will invalidate the pointer! */ |
411 | evstr = GNUNET_strdup (evstr); | 410 | evstr = GNUNET_strdup (evstr); |
411 | #ifdef WINDOWS | ||
412 | GNUNET_break (0 != SetEnvironmentVariable (GNUNET_TESTING_PREFIX, NULL)); | 412 | GNUNET_break (0 != SetEnvironmentVariable (GNUNET_TESTING_PREFIX, NULL)); |
413 | #else | 413 | #else |
414 | GNUNET_break (0 == unsetenv (GNUNET_TESTING_PREFIX)); | 414 | GNUNET_break (0 == unsetenv (GNUNET_TESTING_PREFIX)); |
@@ -421,7 +421,6 @@ tokenizer_cb (void *cls, void *client, | |||
421 | { | 421 | { |
422 | #ifdef WINDOWS | 422 | #ifdef WINDOWS |
423 | GNUNET_assert (0 != SetEnvironmentVariable (GNUNET_TESTING_PREFIX, evstr)); | 423 | GNUNET_assert (0 != SetEnvironmentVariable (GNUNET_TESTING_PREFIX, evstr)); |
424 | GNUNET_free (evstr); | ||
425 | #else | 424 | #else |
426 | static char evar[2* PATH_MAX]; | 425 | static char evar[2* PATH_MAX]; |
427 | 426 | ||
@@ -429,7 +428,7 @@ tokenizer_cb (void *cls, void *client, | |||
429 | GNUNET_TESTING_PREFIX "=%s", evstr)); | 428 | GNUNET_TESTING_PREFIX "=%s", evstr)); |
430 | putenv (evar); | 429 | putenv (evar); |
431 | #endif | 430 | #endif |
432 | /* do not free evstr */ | 431 | GNUNET_free (evstr); |
433 | evstr = NULL; | 432 | evstr = NULL; |
434 | } | 433 | } |
435 | GNUNET_free_non_null (hostname); | 434 | GNUNET_free_non_null (hostname); |