summaryrefslogtreecommitdiffstats
path: root/apps/apps.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/apps.c')
-rw-r--r--apps/apps.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/apps/apps.c b/apps/apps.c
index f9cc27052b..354043ef6e 100644
--- a/apps/apps.c
+++ b/apps/apps.c
@@ -201,6 +201,27 @@ void program_name(char *in, char *out, int size)
out[n]='\0';
}
#else
+#ifdef VMS
+void program_name(char *in, char *out, int size)
+ {
+ char *p=in, *q;
+ char *chars=":]>";
+
+ while(*chars != '\0')
+ {
+ q=strrchr(p,*chars);
+ if (q > p)
+ p = q + 1;
+ chars++;
+ }
+
+ q=strrchr(p,'.');
+ if (q == NULL)
+ q = in+size;
+ strncpy(out,p,q-p);
+ out[q-p]='\0';
+ }
+#else
void program_name(char *in, char *out, int size)
{
char *p;
@@ -214,6 +235,7 @@ void program_name(char *in, char *out, int size)
out[size-1]='\0';
}
#endif
+#endif
#ifdef WIN32
int WIN32_rename(char *from, char *to)