swh:1:snp:6df5a50b8107b6bbe1e51d0239d816a7503c536a
Raw File
Tip revision: 031e6c898f61db1ae0c0be641eac6532c1000d56 authored by Junio C Hamano on 21 October 2008, 20:37:42 UTC
GIT 1.6.0.3
Tip revision: 031e6c8
unsetenv.c
#include "../git-compat-util.h"

void gitunsetenv (const char *name)
{
     extern char **environ;
     int src, dst;
     size_t nmln;

     nmln = strlen(name);

     for (src = dst = 0; environ[src]; ++src) {
	  size_t enln;
	  enln = strlen(environ[src]);
	  if (enln > nmln) {
               /* might match, and can test for '=' safely */
	       if (0 == strncmp (environ[src], name, nmln)
		   && '=' == environ[src][nmln])
		    /* matches, so skip */
		    continue;
	  }
	  environ[dst] = environ[src];
	  ++dst;
     }
     environ[dst] = NULL;
}
back to top