environment: make `getenv_safe()` a public function

The `getenv_safe()` helper function helps to safely retrieve multiple
environment values without the need to depend on platform-specific
behaviour for the return value's lifetime. We'll make use of this
function in a following patch, so let's make it available by making it
non-static and adding a declaration.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Patrick Steinhardt 2021-01-12 13:27:10 +01:00 committed by Junio C Hamano
parent 1ff21c05ba
commit b9d147fb15
2 changed files with 14 additions and 5 deletions

View File

@ -9,6 +9,7 @@
*/
#include "cache.h"
#include "branch.h"
#include "environment.h"
#include "repository.h"
#include "config.h"
#include "refs.h"
@ -152,11 +153,7 @@ static char *expand_namespace(const char *raw_namespace)
return strbuf_detach(&buf, NULL);
}
/*
* Wrapper of getenv() that returns a strdup value. This value is kept
* in argv to be freed later.
*/
static const char *getenv_safe(struct strvec *argv, const char *name)
const char *getenv_safe(struct strvec *argv, const char *name)
{
const char *value = getenv(name);

12
environment.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef ENVIRONMENT_H
#define ENVIRONMENT_H
#include "strvec.h"
/*
* Wrapper of getenv() that returns a strdup value. This value is kept
* in argv to be freed later.
*/
const char *getenv_safe(struct strvec *argv, const char *name);
#endif