9fans archive / 2000 / 07 / 75 / prev next
From: sean@pla...
Subject: [9fans] re: dossrv bug
Date: Wed, 5 Jul 2000 10:34:57 -0400
here's a fix to a dossrv bug in handling long file names.
diff /n/dump/2000/0705/sys/src/cmd/dossrv/dosfs.c dosfs.c
555c555
< for(prevdo = dp->offset-32; prevdo >= 0; prevdo -= 32){
---
> for(prevdo = dp->offset-DOSDIRSIZE; prevdo >= 0; prevdo -= DOSDIRSIZE){
562c562
< for(prevdo = ((Dosbpb*)xf->ptr)->sectsize-32; prevdo >= 0; prevdo -= 32){
---
> for(prevdo = ((Dosbpb*)xf->ptr)->sectsize-DOSDIRSIZE; prevdo >= 0; prevdo -= DOSDIRSIZE){
664c664
< for(prevdo = dp->offset-32; prevdo >= 0; prevdo -= 32){
---
> for(prevdo = dp->offset-DOSDIRSIZE; prevdo >= 0; prevdo -= DOSDIRSIZE){
671c671
< for(prevdo = ((Dosbpb*)f->xf->ptr)->sectsize-32; prevdo >= 0; prevdo -= 32){
---
> for(prevdo = ((Dosbpb*)f->xf->ptr)->sectsize-DOSDIRSIZE; prevdo >= 0; prevdo -= DOSDIRSIZE){
diff /n/dump/2000/0705/sys/src/cmd/dossrv/dossubs.c dossubs.c
517c517
< int isect, addr, o, addr1, addr2, o1, islong, have, need, sum;
---
> int isect, addr, o, addr1, addr2, prevaddr, prevaddr1, o1, islong, have, need, sum;
522a523
> prevaddr1 = -1;
541c542
< dp->prevaddr = addr;
---
> prevaddr = addr;
565a567
> prevaddr1 = prevaddr;
577a580
> dp->prevaddr = prevaddr1;
588a592
> prevaddr1 = prevaddr;
620a625
> dp->prevaddr = prevaddr;