blob: 550ef966cce494933d082ef541c0e9513a363d16 (
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
|
#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;
}
|