summaryrefslogtreecommitdiff
path: root/sys/src/cmd/dossrv
diff options
context:
space:
mode:
authorOri Bernstein <ori@eigenstate.org>2020-04-25 10:57:17 -0700
committerOri Bernstein <ori@eigenstate.org>2020-04-25 10:57:17 -0700
commitd52d7bc121c9c761659b6ca3556f360d341ed6c8 (patch)
tree5b0463739e4ee974f81f24f4cab23596f837c210 /sys/src/cmd/dossrv
parent2de164c51dc3330859c160b80440e1363fb5b566 (diff)
Backed out changeset 2737b9af622b
not what I wanted to commit.
Diffstat (limited to 'sys/src/cmd/dossrv')
-rw-r--r--sys/src/cmd/dossrv/dosfs.c15
-rw-r--r--sys/src/cmd/dossrv/dossubs.c7
-rw-r--r--sys/src/cmd/dossrv/iotrack.c15
3 files changed, 10 insertions, 27 deletions
diff --git a/sys/src/cmd/dossrv/dosfs.c b/sys/src/cmd/dossrv/dosfs.c
index 499551070..4a644fca5 100644
--- a/sys/src/cmd/dossrv/dosfs.c
+++ b/sys/src/cmd/dossrv/dosfs.c
@@ -550,7 +550,7 @@ rclunk(void)
/*
* wipe out a dos directory entry
*/
-static int
+static void
doremove(Xfs *xf, Dosptr *dp)
{
Iosect *p;
@@ -565,8 +565,6 @@ doremove(Xfs *xf, Dosptr *dp)
}
if(prevdo < 0 && dp->prevaddr != -1){
p = getsect(xf, dp->prevaddr);
- if(p == nil)
- return -1;
for(prevdo = ((Dosbpb*)xf->ptr)->sectsize-DOSDIRSIZE; prevdo >= 0; prevdo -= DOSDIRSIZE){
if(p->iobuf[prevdo+11] != 0xf)
break;
@@ -574,8 +572,7 @@ doremove(Xfs *xf, Dosptr *dp)
p->flags |= BMOD;
}
putsect(p);
- }
- return 0;
+ }
}
void
@@ -604,7 +601,8 @@ rremove(void)
* or it's a read only file in the root directory
*/
parp = getsect(f->xf, dp->paddr);
- if(parp == nil || getfile(f) < 0){
+ if(parp == nil
+ || getfile(f) < 0){
errno = Eio;
goto out;
}
@@ -619,10 +617,7 @@ rremove(void)
errno = Eio;
goto out;
}
- if(doremove(f->xf, f->ptr) == -1){
- errno = Eio;
- goto out;
- }
+ doremove(f->xf, f->ptr);
if(!isroot(dp->paddr)){
puttime(pard, 0);
parp->flags |= BMOD;
diff --git a/sys/src/cmd/dossrv/dossubs.c b/sys/src/cmd/dossrv/dossubs.c
index 958087629..d77062554 100644
--- a/sys/src/cmd/dossrv/dossubs.c
+++ b/sys/src/cmd/dossrv/dossubs.c
@@ -1000,8 +1000,6 @@ writefile(Xfile *f, void *vbuf, vlong offset, long count)
c = count;
if(c == bp->sectsize){
p = getosect(xf, addr);
- if(p == nil)
- return -1;
p->flags = 0;
}else{
p = getsect(xf, addr);
@@ -1634,8 +1632,7 @@ makecontig(Xfile *f, int nextra)
if(rp == nil)
return -1;
wp = getosect(xf, ws);
- if(wp == nil)
- return -1;
+ assert(wp != nil);
memmove(wp->iobuf, rp->iobuf, bp->sectsize);
wp->flags = BMOD;
putsect(rp);
@@ -1705,8 +1702,6 @@ falloc(Xfs *xf)
k = clust2sect(bp, n);
for(i=0; i<bp->clustsize; i++){
p = getosect(xf, k+i);
- if(p == nil)
- return -1;
memset(p->iobuf, 0, bp->sectsize);
p->flags = BMOD;
putsect(p);
diff --git a/sys/src/cmd/dossrv/iotrack.c b/sys/src/cmd/dossrv/iotrack.c
index 9b73be2ab..6081a5509 100644
--- a/sys/src/cmd/dossrv/iotrack.c
+++ b/sys/src/cmd/dossrv/iotrack.c
@@ -39,11 +39,8 @@ getiosect(Xfs *xf, vlong addr, int rflag)
int toff;
Iosect *p;
- if(addr < 0){
- chat("invalid address\n");
- errno = Eio;
+ if(addr < 0)
return nil;
- }
toff = addr % Sect2trk;
taddr = addr - toff;
t = getiotrack(xf, taddr);
@@ -56,10 +53,8 @@ getiosect(Xfs *xf, vlong addr, int rflag)
}
t->ref++;
p = t->tp->p[toff];
- if(p == nil){
+ if(p == 0){
p = newsect();
- if(p == nil)
- return nil;
t->tp->p[toff] = p;
p->flags = t->flags&BSTALE;
p->lock.key = 0;
@@ -201,10 +196,10 @@ twrite(Iotrack *t)
t->flags &= ~BSTALE;
}
if(devwrite(t->xf, t->addr, t->tp->buf, Trksize) < 0){
- chat("error]\n");
+ chat("error]");
return -1;
}
- chat(" done]\n");
+ chat(" done]");
return 0;
}
@@ -309,8 +304,6 @@ newsect(void)
else
p = malloc(sizeof(Iosect));
unmlock(&freelock);
- if(p == nil)
- return nil;
p->next = 0;
return p;
}