[Libburn] [PATCH] Change the way RockRidge records dates

Joe Neeman neeman at webone.com.au
Sun Jul 31 15:14:40 EST 2005


There was a problem with linux mounting Rock Ridge volumes: the 
timestamps were working on directories but not files. Switching to short 
timestamps (the way mkisofs does it) seems to fix it.

Joe
-------------- next part --------------
--- libisofs/rockridge.c	2005-07-31 14:31:22.000000000 +1000
+++ libisofs/rockridge.c	2005-07-31 14:56:28.000000000 +1000
@@ -258,16 +258,16 @@
 
 void rrip_add_TF(struct ecma119_write_target *t, struct iso_tree_node *node)
 {
-	unsigned char *TF = malloc(5 + 3 * 17);
+	unsigned char *TF = malloc(5 + 3 * 7);
 
 	TF[0] = 'T';
 	TF[1] = 'F';
-	TF[2] = 5 + 3 * 17;
+	TF[2] = 5 + 3 * 7;
 	TF[3] = 1;
-	TF[4] = (1 << 1) | (1 << 2) | (1 << 3) | (1 << 7);
-	iso_datetime_17(&TF[5], node->attrib.st_mtime);
-	iso_datetime_17(&TF[22], node->attrib.st_atime);
-	iso_datetime_17(&TF[39], node->attrib.st_ctime);
+	TF[4] = (1 << 1) | (1 << 2) | (1 << 3);
+	iso_datetime_7(&TF[5], node->attrib.st_mtime);
+	iso_datetime_7(&TF[12], node->attrib.st_atime);
+	iso_datetime_7(&TF[19], node->attrib.st_ctime);
 	susp_append(t, node, TF);
 }
 


More information about the libburn mailing list