diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2017-09-27 13:59:55 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2017-09-27 13:59:55 +0200 |
commit | 330e7ef39b9a4afa6f484b80bdc3684603c83387 (patch) | |
tree | f5d18195d5609dda009a7cb3e1956c22b9a22a7b /sys/src/9/pc/devarch.c | |
parent | dad00a77da3ebfd0f6fa725dbbc98469984b2341 (diff) |
kernel: don't tokenize inplace in isaconfig() to make /dev/reboot work
Diffstat (limited to 'sys/src/9/pc/devarch.c')
-rw-r--r-- | sys/src/9/pc/devarch.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/src/9/pc/devarch.c b/sys/src/9/pc/devarch.c index 0523ce84e..9ea14d06d 100644 --- a/sys/src/9/pc/devarch.c +++ b/sys/src/9/pc/devarch.c @@ -1182,7 +1182,7 @@ idlehands(void) int isaconfig(char *class, int ctlrno, ISAConf *isa) { - char cc[32], *p; + char cc[32], *p, *x; int i; snprint(cc, sizeof cc, "%s%d", class, ctlrno); @@ -1190,6 +1190,10 @@ isaconfig(char *class, int ctlrno, ISAConf *isa) if(p == nil) return 0; + x = nil; + kstrdup(&x, p); + p = x; + isa->type = ""; isa->nopt = tokenize(p, isa->opt, NISAOPT); for(i = 0; i < isa->nopt; i++){ |