summaryrefslogtreecommitdiff
path: root/support/findme.c
diff options
context:
space:
mode:
Diffstat (limited to 'support/findme.c')
-rw-r--r--support/findme.c52
1 files changed, 0 insertions, 52 deletions
diff --git a/support/findme.c b/support/findme.c
deleted file mode 100644
index 528d401a..00000000
--- a/support/findme.c
+++ /dev/null
@@ -1,52 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#ifdef __NeXT
-/* access macros are not declared in non posix mode in unistd.h -
- don't try to use posix on NeXTstep 3.3 ! */
-#include <libc.h>
-#endif
-
-#if HAVE_ALLOCA_H
-# include <alloca.h>
-#endif
-
-#include "findme.h"
-
-char * findProgramPath(char * argv0) {
- char * path = getenv("PATH");
- char * pathbuf;
- char * start, * chptr;
- char * buf;
-
- /* If there is a / in the argv[0], it has to be an absolute
- path */
- if (strchr(argv0, '/'))
- return strdup(argv0);
-
- if (!path) return NULL;
-
- start = pathbuf = alloca(strlen(path) + 1);
- buf = malloc(strlen(path) + strlen(argv0) + 2);
- strcpy(pathbuf, path);
-
- chptr = NULL;
- do {
- if ((chptr = strchr(start, ':')))
- *chptr = '\0';
- sprintf(buf, "%s/%s", start, argv0);
-
- if (!access(buf, X_OK))
- return buf;
-
- if (chptr)
- start = chptr + 1;
- else
- start = NULL;
- } while (start && *start);
-
- free(buf);
-
- return NULL;
-}