aboutsummaryrefslogtreecommitdiff
path: root/src/testbed/gnunet-helper-testbed.c
diff options
context:
space:
mode:
authorLRN <lrn1986@gmail.com>2013-12-08 21:47:26 +0000
committerLRN <lrn1986@gmail.com>2013-12-08 21:47:26 +0000
commit06ab204142b7614583f85856b22bf0bbef8e92a9 (patch)
treeec57ede3808486c149428d80a5ab9ff26477deaf /src/testbed/gnunet-helper-testbed.c
parent12ea7cbb59260ee3b48b0f82a43ff96657e02ee8 (diff)
downloadgnunet-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.c5
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);