diff --git a/libisoburn/trunk/test/ng_xorrisoburn.c b/libisoburn/trunk/test/ng_xorrisoburn.c index fd5a20d5..7d1bc85a 100644 --- a/libisoburn/trunk/test/ng_xorrisoburn.c +++ b/libisoburn/trunk/test/ng_xorrisoburn.c @@ -119,11 +119,19 @@ int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag) } -int Xorriso_shutdown_libraries(struct XorrisO *xorriso, int flag) +/* @param flag bit0= global shutdown of libraries */ +int Xorriso_detach_libraries(struct XorrisO *xorriso, int flag) { - if(xorriso->libs_are_started==0) - return(0); - isoburn_finish(); + Xorriso_give_up_drive(xorriso, 3); + if(xorriso->in_volset_handle!=NULL) { /* standalone image */ + iso_image_unref((IsoImage *) xorriso->in_volset_handle); + xorriso->in_volset_handle= NULL; + } + if(flag&1) { + if(xorriso->libs_are_started==0) + return(0); + isoburn_finish(); + } return(1); } diff --git a/libisoburn/trunk/test/ng_xorrisoburn.h b/libisoburn/trunk/test/ng_xorrisoburn.h index 1fc1acd4..b5b66677 100644 --- a/libisoburn/trunk/test/ng_xorrisoburn.h +++ b/libisoburn/trunk/test/ng_xorrisoburn.h @@ -19,7 +19,8 @@ struct FindjoB; int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag); -int Xorriso_shutdown_libraries(struct XorrisO *xorriso, int flag); +/* @param flag bit0= global shutdown of libraries */ +int Xorriso_detach_libraries(struct XorrisO *xorriso, int flag); int Xorriso_create_empty_iso(struct XorrisO *xorriso, int flag); diff --git a/libisoburn/trunk/test/xorriso.c b/libisoburn/trunk/test/xorriso.c index 8d98e7eb..98186973 100644 --- a/libisoburn/trunk/test/xorriso.c +++ b/libisoburn/trunk/test/xorriso.c @@ -2957,7 +2957,7 @@ int Xorriso_destroy_re(struct XorrisO *m, int flag) } -/* @param flag bit0= shutdown libraries */ +/* @param flag bit0= global shutdown of libraries */ int Xorriso_destroy(struct XorrisO **xorriso, int flag) { struct XorrisO *m; @@ -2965,10 +2965,8 @@ int Xorriso_destroy(struct XorrisO **xorriso, int flag) m= *xorriso; if(m==NULL) return(0); - Xorriso_give_up_drive(m, 3); Xorriso_destroy_re(m,0); - if(flag&1) - Xorriso_shutdown_libraries(m, 0); + Xorriso_detach_libraries(m, flag&1); free((char *) m); *xorriso= NULL; diff --git a/libisoburn/trunk/test/xorriso_timestamp.h b/libisoburn/trunk/test/xorriso_timestamp.h index ac2a3212..aba65aae 100644 --- a/libisoburn/trunk/test/xorriso_timestamp.h +++ b/libisoburn/trunk/test/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.01.15.174409" +#define Xorriso_timestamP "2008.01.15.204057" diff --git a/libisoburn/trunk/test/xorrisoburn.c b/libisoburn/trunk/test/xorrisoburn.c index 32b09dfa..f4bb1291 100644 --- a/libisoburn/trunk/test/xorrisoburn.c +++ b/libisoburn/trunk/test/xorrisoburn.c @@ -101,11 +101,15 @@ int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag) } -int Xorriso_shutdown_libraries(struct XorrisO *xorriso, int flag) +/* @param flag bit0= global shutdown of libraries */ +int Xorriso_detach_libraries(struct XorrisO *xorriso, int flag) { - if(xorriso->libs_are_started==0) - return(0); - isoburn_finish(); + Xorriso_give_up_drive(xorriso, 3); + if(flag&1) { + if(xorriso->libs_are_started==0) + return(0); + isoburn_finish(); + } return(1); } diff --git a/libisoburn/trunk/test/xorrisoburn.h b/libisoburn/trunk/test/xorrisoburn.h index 83848e61..e205eb23 100644 --- a/libisoburn/trunk/test/xorrisoburn.h +++ b/libisoburn/trunk/test/xorrisoburn.h @@ -19,7 +19,8 @@ struct FindjoB; int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag); -int Xorriso_shutdown_libraries(struct XorrisO *xorriso, int flag); +/* @param flag bit0= global shutdown of libraries */ +int Xorriso_detach_libraries(struct XorrisO *xorriso, int flag); int Xorriso_create_empty_iso(struct XorrisO *xorriso, int flag);