*** lemon.original.c Sat Oct 21 21:02:34 2006 --- lemon.c Wed Mar 21 23:07:19 2007 *************** *** 2909,2928 **** --- 2909,2944 ---- c = *cp; *cp = 0; path = (char *)malloc( strlen(argv0) + strlen(name) + 2 ); + #ifdef __WIN32__ + if( path ) sprintf(path,"%s\\%s",argv0,name); + #else if( path ) sprintf(path,"%s/%s",argv0,name); + #endif *cp = c; }else{ extern char *getenv(); pathlist = getenv("PATH"); + #ifdef __WIN32__ + if( pathlist==0 ) pathlist = "."; + #else if( pathlist==0 ) pathlist = ".:/bin:/usr/bin"; + #endif path = (char *)malloc( strlen(pathlist)+strlen(name)+2 ); if( path!=0 ){ while( *pathlist ){ + #ifdef __WIN32__ + cp = strchr(pathlist,';'); + #else cp = strchr(pathlist,':'); + #endif if( cp==0 ) cp = &pathlist[strlen(pathlist)]; c = *cp; *cp = 0; + #ifdef __WIN32__ sprintf(path,"%s/%s",pathlist,name); + #else + sprintf(path,"%s\\%s",pathlist,name); + #endif *cp = c; if( c==0 ) pathlist = ""; else pathlist = &cp[1];