Jason Riedy wrote: > + > +int gitsetenv(const char *name, const char *value, int replace) > +{ > + int out; > + size_t namelen, valuelen; > + char *envstr; > + > + if (!name || !value) return -1; > + if (!replace) { > + char *oldval = NULL; > + oldval = getenv(name); > + if (oldval) return 0; > + } > + > + namelen = strlen(name); > + valuelen = strlen(value); > + envstr = malloc((namelen + valuelen + 2) * sizeof(char)); > + if (!envstr) return -1; > + > + memcpy(envstr, name, namelen); > + envstr[namelen] = '='; > + memcpy(envstr + namelen + 1, value, valuelen); > + envstr[namelen + valuelen + 1] = 0; > + > + out = putenv(envstr); > + > + free(envstr); > + return out; > +} Wouldn't this be a good case for using alloca()? -hpa - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.htmlReceived on Mon Dec 05 08:08:19 2005
This archive was generated by hypermail 2.1.8 : 2005-12-05 08:08:25 EST