aboutsummaryrefslogtreecommitdiff
path: root/sysutils/mkisofs-devel/files/patch-ad
blob: de43f3cd91f5b8600a53231dfb242714385a679d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
--- multi.c.orig	Mon Jun  1 20:00:25 1998
+++ multi.c	Fri Oct 30 22:36:03 1998
@@ -296,7 +296,7 @@
       idr = (struct iso_directory_record *) &dirbuff[i];
       if(idr->length[0] == 0) 
 	{
-	  i = (i + SECTOR_SIZE - 1) & ~(SECTOR_SIZE - 1);
+	  i = ROUND_UP(i);
 	  continue;
 	}
       (*nent)++;
@@ -324,7 +324,7 @@
       idr = (struct iso_directory_record *) &dirbuff[i];
       if(idr->length[0] == 0) 
 	{
-	  i = (i + SECTOR_SIZE - 1) & ~(SECTOR_SIZE - 1);
+	  i = ROUND_UP(i);
 	  continue;
 	}
       *pnt = (struct directory_entry *) e_malloc(sizeof(**rtn));
@@ -436,8 +436,9 @@
    */
   if( tt_extent != 0 && tt_size != 0 )
     {
-      tt_buf = (unsigned char *) e_malloc(tt_size);
-      readsecs(tt_extent, tt_buf, tt_size/SECTOR_SIZE);
+      tt_buf = (unsigned char *) e_malloc(ROUND_UP(tt_size));
+      memset(tt_buf, 0, tt_size);
+      readsecs(tt_extent, tt_buf, (tt_size + SECTOR_SIZE - 1) / SECTOR_SIZE);
 
       /*
        * Loop through the file, examine each entry, and attempt to