On Wed, Mar 19, 2025 at 06:23:50PM -0400, Taylor Blau wrote: > diff --git a/http.c b/http.c > index 0cbcb079b2..17b676a1d5 100644 > --- a/http.c > +++ b/http.c > @@ -1256,10 +1256,30 @@ static void set_from_env(char **var, const char *envname) > } > } > > +static void set_long_from_env(long *var, const char *envname) > +{ > + const char *val = getenv(envname); > + if (val) { > + long tmp; > + char *endp; > + int saved_errno = errno; > + > + errno = 0; > + tmp = strtol(val, &endp, 10); > + > + if (errno) > + warning_errno(_("failed to parse %s"), envname); > + else if (*endp || endp == val) > + warning(_("failed to parse %s"), envname); > + else > + *var = tmp; > + > + errno = saved_errno; > + } > +} The `saved_errno` dance feels a bit unnecessary, but other than that I'm okay with this approach of only printing a warning instead of dying right away. The other patches look good to me, too, thanks! Patrick