--- xinu/sys/sdelete.c 2018/04/24 17:39:04 1.1 +++ xinu/sys/sdelete.c 2018/04/24 17:39:57 1.1.1.2 @@ -13,22 +13,21 @@ SYSCALL sdelete(sem) int sem; { - PStype ps; int pid; - struct sentry *sptr; /* address of sem to free */ + struct sentry *sptr; - disable(ps); + disable(); if (isbadsem(sem) || semaph[sem].sstate==SFREE) { - restore(ps); + restore(); return(SYSERR); } sptr = &semaph[sem]; sptr->sstate = SFREE; - if (nonempty(sptr->sqhead)) { /* free waiting processes */ + if (nonempty(sptr->sqhead)) { while( (pid=getfirst(sptr->sqhead)) != EMPTY) ready(pid,RESCHNO); resched(); } - restore(ps); + restore(); return(OK); }