From 43c3b69d7feadd63f9c3141f6d9b094b02d79ab7 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Sun, 11 Oct 2009 14:14:20 +0000 Subject: [PATCH] Made -application_id, -publisher, -system_id, -volset_id pending image changes --- libisoburn/trunk/xorriso/xorriso.c | 15 +++++---------- libisoburn/trunk/xorriso/xorriso_private.h | 3 --- libisoburn/trunk/xorriso/xorriso_timestamp.h | 2 +- libisoburn/trunk/xorriso/xorrisoburn.c | 18 +++++++++++++++++- libisoburn/trunk/xorriso/xorrisoburn.h | 3 +++ 5 files changed, 26 insertions(+), 15 deletions(-) diff --git a/libisoburn/trunk/xorriso/xorriso.c b/libisoburn/trunk/xorriso/xorriso.c index 83df5fb2..d4a9b6ef 100644 --- a/libisoburn/trunk/xorriso/xorriso.c +++ b/libisoburn/trunk/xorriso/xorriso.c @@ -5024,15 +5024,6 @@ int Xorriso_destroy(struct XorrisO **xorriso, int flag) } -int Xorriso_set_change_pending(struct XorrisO *xorriso, int flag) -{ - xorriso->volset_change_pending= 1; - if(!(flag & 2)) - xorriso->hln_change_pending= 1; - return(1); -} - - int Xorriso_dialog_input(struct XorrisO *xorriso, char line[], int linesize, int flag) /* @@ -13164,6 +13155,7 @@ int Xorriso_option_application_id(struct XorrisO *xorriso, char *name, "-application_id", 0) <= 0) return(0); strcpy(xorriso->application_id,name); + Xorriso_set_change_pending(xorriso, 1); return(1); } @@ -17066,7 +17058,7 @@ ex:; /* Options -mount , -mount_cmd , -session_string */ /* @param bit0= -mount_cmd: print mount command to result channel rather than performing it - bit1= preform -session_string rather than -mount_cmd + bit1= perform -session_string rather than -mount_cmd */ int Xorriso_option_mount(struct XorrisO *xorriso, char *dev, char *adr_mode, char *adr, char *cmd, int flag) @@ -17859,6 +17851,7 @@ int Xorriso_option_publisher(struct XorrisO *xorriso, char *name, int flag) "-publisher", 0) <= 0) return(0); strcpy(xorriso->publisher,name); + Xorriso_set_change_pending(xorriso, 1); return(1); } @@ -18740,6 +18733,7 @@ int Xorriso_option_system_id(struct XorrisO *xorriso, char *name, int flag) "-system_id", 0) <= 0) return(0); strcpy(xorriso->system_id, name); + Xorriso_set_change_pending(xorriso, 1); return(1); } @@ -19088,6 +19082,7 @@ int Xorriso_option_volset_id(struct XorrisO *xorriso, char *name, int flag) "-volset_id", 0) <= 0) return(0); strcpy(xorriso->volset_id, name); + Xorriso_set_change_pending(xorriso, 1); return(1); } diff --git a/libisoburn/trunk/xorriso/xorriso_private.h b/libisoburn/trunk/xorriso/xorriso_private.h index 240cb6ca..76793539 100644 --- a/libisoburn/trunk/xorriso/xorriso_private.h +++ b/libisoburn/trunk/xorriso/xorriso_private.h @@ -470,9 +470,6 @@ struct XorrisO { /* the global context of xorriso */ }; -/* @param flag bit0= do not set hln_change_pending */ -int Xorriso_set_change_pending(struct XorrisO *xorriso, int flag); - int Xorriso_prepare_regex(struct XorrisO *xorriso, char *adr, int flag); int Xorriso_result(struct XorrisO *xorriso, int flag); diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index 61538c1b..5b27e256 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2009.10.10.142353" +#define Xorriso_timestamP "2009.10.11.141528" diff --git a/libisoburn/trunk/xorriso/xorrisoburn.c b/libisoburn/trunk/xorriso/xorrisoburn.c index 5947d799..ca51a53f 100644 --- a/libisoburn/trunk/xorriso/xorrisoburn.c +++ b/libisoburn/trunk/xorriso/xorrisoburn.c @@ -8543,7 +8543,7 @@ int Xorriso_set_volid(struct XorrisO *xorriso, char *volid, int flag) return(ret); iso_image_set_volume_id(volume, volid); if(!(flag&1)) - Xorriso_set_change_pending(xorriso, 0); + Xorriso_set_change_pending(xorriso, 1); Xorriso_process_msg_queues(xorriso,0); sprintf(xorriso->info_text,"Volume ID: '%s'",iso_image_get_volume_id(volume)); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0); @@ -12958,3 +12958,19 @@ int Xorriso_pvd_info(struct XorrisO *xorriso, int flag) return(1); } + +/* @param flag bit0= do not set hln_change_pending */ +int Xorriso_set_change_pending(struct XorrisO *xorriso, int flag) +{ + int ret; + IsoImage *image; + + ret= Xorriso_get_volume(xorriso, &image, 1); + if(ret <= 0) + return ret; + xorriso->volset_change_pending= 1; + if(!(flag & 1)) + xorriso->hln_change_pending= 1; + return(1); +} + diff --git a/libisoburn/trunk/xorriso/xorrisoburn.h b/libisoburn/trunk/xorriso/xorrisoburn.h index 6c8cb89a..bf12c513 100644 --- a/libisoburn/trunk/xorriso/xorrisoburn.h +++ b/libisoburn/trunk/xorriso/xorrisoburn.h @@ -485,6 +485,9 @@ int Xorriso_is_plain_image_file(struct XorrisO *xorriso, void *in_node, int Xorriso_pvd_info(struct XorrisO *xorriso, int flag); +/* @param flag bit0= do not set hln_change_pending */ +int Xorriso_set_change_pending(struct XorrisO *xorriso, int flag); + /* A pseudo file type for El-Torito bootsectors as in man 2 stat : For now take the highest possible value.