ref: 0542f08d10334abfe92d23484379563bb6f2b31e
parent: 61aeb582ca14c95846cf34c8733659d74e4e5e06
author: cinap_lenrek <[email protected]>
date: Sat Jun 29 08:10:12 EDT 2013
dump9660: fix volume space size field (from sources, paure) http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-119.pdf page 19: Volume Space Size (BP 81 to 88) This field shall specify as a 32-bit number the number of Logical Blocks in which the Volume Space of the volume is recorded. This field shall be recorded according to 7.3.3.
--- a/sys/src/cmd/disk/9660/dump9660.c
+++ b/sys/src/cmd/disk/9660/dump9660.c
@@ -307,11 +307,10 @@
* Patch in root directories.
*/
setroot(cd, cd->iso9660pvd, iroot.block, iroot.length);
- setvolsize(cd, cd->iso9660pvd, (vlong)cd->nextblock * Blocksize);
+ setvolsize(cd, cd->iso9660pvd, cd->nextblock);
if(cd->flags & CDjoliet){
setroot(cd, cd->jolietsvd, jroot.block, jroot.length);
- setvolsize(cd, cd->jolietsvd,
- (vlong)cd->nextblock * Blocksize);
+ setvolsize(cd, cd->jolietsvd, cd->nextblock);
}
}else{
/*
@@ -341,11 +340,10 @@
* Patch in new root directory entry.
*/
setroot(cd, cd->iso9660pvd, idumproot.block, idumproot.length);
- setvolsize(cd, cd->iso9660pvd, (vlong)cd->nextblock * Blocksize);
+ setvolsize(cd, cd->iso9660pvd, cd->nextblock);
if(cd->flags & CDjoliet){
setroot(cd, cd->jolietsvd, jdumproot.block, jdumproot.length);
- setvolsize(cd, cd->jolietsvd,
- (vlong)cd->nextblock * Blocksize);
+ setvolsize(cd, cd->jolietsvd, cd->nextblock);
}
}
writepathtables(cd);