diff options
Diffstat (limited to 'Build/source/utils/xml2pmx/xml2pmx-src/Args.c')
-rw-r--r-- | Build/source/utils/xml2pmx/xml2pmx-src/Args.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/Build/source/utils/xml2pmx/xml2pmx-src/Args.c b/Build/source/utils/xml2pmx/xml2pmx-src/Args.c new file mode 100644 index 00000000000..550ef966cce --- /dev/null +++ b/Build/source/utils/xml2pmx/xml2pmx-src/Args.c @@ -0,0 +1,29 @@ + +#include "obx.h" +#include <stdlib.h> + +value* GetArg(value *bp) { + int n = bp[HEAD+0].i; + char *s = (char *) pointer(bp[HEAD+1]); + int len = bp[HEAD+2].i; + const char *t = + (0 <= n && n < saved_argc ? saved_argv[n] : ""); + obcopy(s, len, t, 0, bp); + return bp; +} + +value *GetEnv(value *bp) { + char *name = (char *) pointer(bp[HEAD+0]); + char *s = (char *) pointer(bp[HEAD+2]); + int len = bp[HEAD+3].i; + const char *t = getenv(name); + if (t == NULL) t = ""; + obcopy(s, len, t, 0, bp); + return bp; +} + +int GetArgc(void) { + return saved_argc; +} + + |