"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "libisofs/eltorito.c" between
xorriso-1.5.2.tar.gz and xorriso-1.5.4.tar.gz

About: GNU xorriso creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. It is suitable for incremental data backup and for production of bootable ISO 9660 images. GNU xorriso is a statical compilation of the libraries libburn, libisofs, libisoburn, and libjte.

eltorito.c  (xorriso-1.5.2):eltorito.c  (xorriso-1.5.4)
skipping to change at line 567 skipping to change at line 567
{ {
IsoDir *parent; IsoDir *parent;
char *catdir = NULL, *catname = NULL; char *catdir = NULL, *catname = NULL;
catdir = strdup(catalog_path); catdir = strdup(catalog_path);
if (catdir == NULL) { if (catdir == NULL) {
return ISO_OUT_OF_MEM; return ISO_OUT_OF_MEM;
} }
/* get both the dir and the name */ /* get both the dir and the name */
catname = strrchr(catdir, '/'); catname = strrchr(catdir, '/');
if (catname == NULL) { if (catname == NULL)
free(catdir); catname = catdir;
return ISO_WRONG_ARG_VALUE;
}
if (catname == catdir) { if (catname == catdir) {
/* we are apending catalog to root node */ /* we are appending catalog to root node */
parent = image->root; parent = image->root;
} else { } else {
IsoNode *p; IsoNode *p;
catname[0] = '\0'; catname[0] = '\0';
ret = iso_tree_path_to_node(image, catdir, &p); ret = iso_tree_path_to_node(image, catdir, &p);
if (ret <= 0) { if (ret <= 0) {
iso_msg_submit(image->id, ISO_NODE_DOESNT_EXIST, 0, iso_msg_submit(image->id, ISO_NODE_DOESNT_EXIST, 0,
"Cannot find directory for El Torito boot catalog in ISO image: '%s'", "Cannot find directory for El Torito boot catalog in ISO image: '%s'",
catdir); catdir);
free(catdir); free(catdir);
return ret < 0 ? ret : (int) ISO_NODE_DOESNT_EXIST; return ret < 0 ? ret : (int) ISO_NODE_DOESNT_EXIST;
} }
if (p->type != LIBISO_DIR) { if (p->type != LIBISO_DIR) {
free(catdir); free(catdir);
return ISO_WRONG_ARG_VALUE; return ISO_WRONG_ARG_VALUE;
} }
parent = (IsoDir*)p; parent = (IsoDir*)p;
} }
catname++; if (catname[0] == '/' || catname[0] == 0)
catname++;
ret = iso_tree_add_boot_node(parent, catname, &cat_node); ret = iso_tree_add_boot_node(parent, catname, &cat_node);
free(catdir); free(catdir);
if (ret < 0) { if (ret < 0) {
return ret; return ret;
} }
} }
/* create the boot image */ /* create the boot image */
ret = create_image(image, image_path, type, &boot_image, &boot_node); ret = create_image(image, image_path, type, &boot_image, &boot_node);
if (ret < 0) { if (ret < 0) {
 End of changes. 3 change blocks. 
6 lines changed or deleted 5 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)