summaryrefslogtreecommitdiff
path: root/x11/gtk--/patches/patch-aa
blob: e79f6967f99755828511945770e294e5540ace30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
--- src/gensig/gensig.cc.orig	Wed May 13 16:25:09 1998
+++ src/gensig/gensig.cc	Wed May 13 16:26:02 1998
@@ -680,3 +680,30 @@
     system(buf);
     return 0;
 }
+
+
+/* basename function from MOROHOSHI Akihiko <moro@race.u-tokyo.ac.jp> */
+char *
+basename(const char * str) {
+  const char *s,*t;
+  char *r;
+  if (str == NULL)
+    return strdup(".");
+
+  if( *str == '\0' )
+    return strdup(".");
+      
+  for (s=str+strlen(str)-1; *s=='/' && s>str; s--) /* trim trailing '/'s */
+    ;
+  t=s+1;
+  for (; s>=str; s--)
+    if (*s == '/') {
+      if (t-s>1)
+        str=s+1;	/* t-s==1 is special case: str=~^/+$ */
+        break;
+    }
+  r=(char *)malloc(t-str+1);
+  strncpy(r,str,t-str);
+  r[t-str]='\0';
+  return r;
+}