Some setenv() implementations (e.g. the one in OpenBSD's stdlib)
segfault if we pass a NULL value. Add an additional check to avoid this.

Signed-off-by: Lukas Fleischer <[email protected]>
---
 shared.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/shared.c b/shared.c
index 75c4b5c..0c8ce3e 100644
--- a/shared.c
+++ b/shared.c
@@ -392,7 +392,7 @@ void cgit_prepare_repo_env(struct cgit_repo * repo)
        p = env_vars;
        q = p + env_var_count;
        for (; p < q; p++)
-               if (setenv(p->name, p->value, 1))
+               if (p->value && setenv(p->name, p->value, 1))
                        fprintf(stderr, warn, p->name, p->value);
 }
 
-- 
1.7.6


_______________________________________________
cgit mailing list
[email protected]
http://hjemli.net/mailman/listinfo/cgit

Reply via email to