shithub: riscv

Download patch

ref: ec1c1b9b52632a5af59f37c1330573b78775cce1
parent: 1e0b65c8bfb2f1b6fbc189795b73a6e89b05dc75
author: cinap_lenrek <[email protected]>
date: Sun Dec 23 20:21:47 EST 2018

dossrv: cleanup

--- a/sys/src/cmd/dossrv/dossubs.c
+++ b/sys/src/cmd/dossrv/dossubs.c
@@ -144,7 +144,8 @@
 					bp->fatinfo = fisec;
 					bp->freeptr = GLONG(fi->nextfree);
 					bp->freeclusters = GLONG(fi->freeclust);
-					chat("fat info: %ld free clusters, next free %ld\n", bp->freeclusters, bp->freeptr);
+					chat("fat info: %ld free clusters, next free %ld\n",
+						bp->freeclusters, bp->freeptr);
 				}
 				putsect(p1);
 			}
@@ -154,12 +155,10 @@
 			bootdump(2, b);
 		bp->rootaddr = bp->fataddr + bp->nfats*bp->fatsize;
 		bp->rootstart = 0;
-		i = bp->rootsize*DOSDIRSIZE + bp->sectsize-1;
-		i /= bp->sectsize;
-		bp->dataaddr = bp->rootaddr + i;
+		bp->dataaddr = bp->rootaddr + (bp->rootsize*DOSDIRSIZE + bp->sectsize-1)/bp->sectsize;
 		bp->freeptr = FATRESRV;
 	}
-	bp->fatclusters = FATRESRV+(bp->volsize - bp->dataaddr)/bp->clustsize;
+	bp->fatclusters = FATRESRV + (bp->volsize - bp->dataaddr)/bp->clustsize;
 
 	if(xf->isfat32)
 		bp->fatbits = 32;
@@ -205,7 +204,7 @@
 	Iosect *p;
 
 	dp = f->ptr;
-	if(dp->p)
+	if(dp->p != nil)
 		panic("getfile");
 	p = getsect(f->xf, dp->addr);
 	if(p == nil)
@@ -234,7 +233,7 @@
 	Dosptr *dp;
 
 	dp = f->ptr;
-	if(!dp->p)
+	if(dp->p == nil)
 		panic("putfile");
 	putsect(dp->p);
 	dp->p = nil;
@@ -898,8 +897,7 @@
 					goto error;
 				}
 			}
-			k = clust2sect(bp, ppclust) + 
-				so%bp->clustsize;
+			k = clust2sect(bp, ppclust) + so%bp->clustsize;
 		}else{
 			if(so*bp->sectsize >= bp->rootsize*DOSDIRSIZE)
 				goto error;
@@ -919,7 +917,7 @@
 	return 0;
 
 error:
-	if(p)
+	if(p != nil)
 		putsect(p);
 	return -1;
 }
--- a/sys/src/cmd/dossrv/iotrack.c
+++ b/sys/src/cmd/dossrv/iotrack.c
@@ -39,6 +39,8 @@
 	int toff;
 	Iosect *p;
 
+	if(addr < 0)
+		return nil;
 	toff = addr % Sect2trk;
 	taddr = addr - toff;
 	t = getiotrack(xf, taddr);
@@ -45,7 +47,7 @@
 	if(rflag && (t->flags&BSTALE)){
 		if(tread(t) < 0){
 			unmlock(&t->lock);
-			return 0;
+			return nil;
 		}
 		t->flags &= ~BSTALE;
 	}