diff --git a/libisoburn/trunk/xorriso/xorriso.c b/libisoburn/trunk/xorriso/xorriso.c index 313dee37..fccd3e71 100644 --- a/libisoburn/trunk/xorriso/xorriso.c +++ b/libisoburn/trunk/xorriso/xorriso.c @@ -7615,7 +7615,7 @@ illegal_c:; sfe[cpt-msc]= 0; if(strcmp(sfe, "16")==0) /* growisofs uses 16 to avoid a bug in mkisofs */ strcpy(sfe, "0"); - if(indev[0]) { + if(xorriso->in_drive_handle!=NULL) { /* give up indev before setting the load address */ ret= Xorriso_option_dev(xorriso, "", 1); if(ret<=0) @@ -9196,7 +9196,7 @@ int Xorriso_option_dev(struct XorrisO *xorriso, char *in_adr, int flag) Text_shellsafe(xorriso->indev, sfe, 0)); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); } - if((flag&2) && xorriso->in_drive_handle != NULL && + if((flag&2) && xorriso->out_drive_handle != NULL && xorriso->in_drive_handle != xorriso->out_drive_handle) { sprintf(xorriso->info_text,"Giving up -outdev %s", Text_shellsafe(xorriso->outdev, sfe, 0)); diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index 46a65112..a82ba5a4 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.07.08.102622" +#define Xorriso_timestamP "2008.07.08.132054" diff --git a/libisoburn/trunk/xorriso/xorrisoburn.c b/libisoburn/trunk/xorriso/xorrisoburn.c index 23c85ed4..c7c42c73 100644 --- a/libisoburn/trunk/xorriso/xorrisoburn.c +++ b/libisoburn/trunk/xorriso/xorrisoburn.c @@ -961,7 +961,7 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag) if(ret>0) { /* Allow the consumer of output to access the input drive */ source_drive= NULL; - ret= Xorriso_give_up_drive(xorriso, 1); + ret= Xorriso_give_up_drive(xorriso, 1|8); if(ret<=0) goto ex; }