diff options
| author | rsc <rsc> | 2006-07-15 17:13:56 +0000 | 
|---|---|---|
| committer | rsc <rsc> | 2006-07-15 17:13:56 +0000 | 
| commit | 7f419a0d29e0f785dce21b784c4849ae66c790ca (patch) | |
| tree | 80b21f909d1b918d78bb95fa7d40fbbe56e4b122 | |
| parent | 46bbd72f3eeaff9386b2a90af88f3d46b458a0e8 (diff) | |
| download | xv6-labs-7f419a0d29e0f785dce21b784c4849ae66c790ca.tar.gz xv6-labs-7f419a0d29e0f785dce21b784c4849ae66c790ca.tar.bz2 xv6-labs-7f419a0d29e0f785dce21b784c4849ae66c790ca.zip  | |
Change fetchint, fetcharg, and putint to return -1 on error, 0 on success.
They had been returning 0 on error, 1 on success, but all the callers
were checking for return value < 0.
| -rw-r--r-- | syscall.c | 10 | 
1 files changed, 5 insertions, 5 deletions
@@ -23,7 +23,7 @@ extern struct spinlock proc_table_lock;  /*   * fetch 32 bits from a user-supplied pointer. - * returns 1 if addr was OK, 0 if illegal. + * returns 0 if addr was OK, -1 if illegal.   */  int  fetchint(struct proc *p, unsigned addr, int *ip) @@ -31,9 +31,9 @@ fetchint(struct proc *p, unsigned addr, int *ip)    *ip = 0;    if(addr > p->sz - 4) -    return 0; +    return -1;    memcpy(ip, p->mem + addr, 4); -  return 1; +  return 0;  }  int @@ -49,9 +49,9 @@ int  putint(struct proc *p, unsigned addr, int ip)  {    if(addr > p->sz - 4) -    return 0; +    return -1;    memcpy(p->mem + addr, &ip, 4); -  return 1; +  return 0;  }  int  | 
