On Tue, Jan 15, 2019 at 11:32 AM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Jeff King <peff@xxxxxxxx> writes: > > > On Sat, Jan 12, 2019 at 10:51:42AM -0800, Stefan Beller wrote: > > > >> > I wonder, and not as "you should do this" feedback on this series, just > >> > >> There is a getenv_safe() in environment.c, but I guess a xgetenv() that > >> takes the same parameters as getenv() is better for ease of use. > > > > Yes, but it punts on the memory ownership by stuffing everything into an > > argv_array. That saves a few lines if you're going to ask for five > > variables, but for a single variable it's no better than: > > > > char *foo = getenv_safe("FOO"); > > You meant xstrdup_or_null(getenv("FOO")) here? And did Stefan mean > > #define xgetenv(e) xstrdup_or_null(getenv(e)) > > ? Assume I did. (I thought of it as a function effectively adding the xstrdup_or_null) If we go further into assuming the usage patterns of these xgetenv calls, we might throw in an UNLEAK as well, but that might be over board.