From 51474385063dca1cde10cb3fd5d8e429f87669f4 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Tue, 23 Nov 2010 19:37:19 +0000 Subject: [PATCH] Improved behavior with loading multiple boot images of identical content --- libisoburn/trunk/xorriso/iso_img.c | 17 ++++++++++------- libisoburn/trunk/xorriso/xorriso_timestamp.h | 2 +- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/libisoburn/trunk/xorriso/iso_img.c b/libisoburn/trunk/xorriso/iso_img.c index 54643ad1..89545109 100644 --- a/libisoburn/trunk/xorriso/iso_img.c +++ b/libisoburn/trunk/xorriso/iso_img.c @@ -733,10 +733,15 @@ no_boot:; if(ret != 1) goto no_boot; - ret= Xorriso_path_from_lba(xorriso, NULL, xorriso->loaded_boot_bin_lba, - path, 1); - if(ret > 0) - bin_path_valid= 1; + ret= iso_image_get_all_boot_imgs(image, &num_boots, &boots, &bootnodes, 0); + Xorriso_process_msg_queues(xorriso,0); + if(ret != 1) { + num_boots= 0; + } else { + ret= Xorriso_path_from_node(xorriso, (IsoNode *) bootnodes[0], path, 0); + if(ret > 0) + bin_path_valid= 1; + } sprintf(respt, "Boot record : El Torito"); if(bin_path_valid) ret= Xorriso_is_isohybrid(xorriso, bootimg_node, 0); @@ -795,9 +800,7 @@ no_boot:; strcat(respt, "\n"); Xorriso_toc_line(xorriso, flag & 8); - ret= iso_image_get_all_boot_imgs(image, &num_boots, &boots, &bootnodes, 0); - Xorriso_process_msg_queues(xorriso,0); - if(ret == 1 && num_boots > 1) { + if(num_boots > 1) { for(i= 1; i < num_boots; i++) { ret= Xorriso_path_from_node(xorriso, (IsoNode *) bootnodes[i], path, 0); if(ret > 0) diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index ab4ca4ca..2ce2e52f 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2010.11.21.065727" +#define Xorriso_timestamP "2010.11.23.193708"