New isoburn_igopt_set_relaxed() relaxation isoburn_igopt_joliet_utf16

This commit is contained in:
Thomas Schmitt 2013-12-18 07:42:10 +00:00
parent c836db4073
commit 8d6cd45c96
4 changed files with 19 additions and 3 deletions

View File

@ -498,6 +498,7 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
iso_write_opts_set_relaxed_vol_atts(wopts, 1); iso_write_opts_set_relaxed_vol_atts(wopts, 1);
iso_write_opts_set_joliet_longer_paths(wopts, opts->joliet_longer_paths); iso_write_opts_set_joliet_longer_paths(wopts, opts->joliet_longer_paths);
iso_write_opts_set_joliet_long_names(wopts, opts->joliet_long_names); iso_write_opts_set_joliet_long_names(wopts, opts->joliet_long_names);
iso_write_opts_set_joliet_utf16(wopts, opts->joliet_utf16);
iso_write_opts_set_always_gmt(wopts, opts->always_gmt); iso_write_opts_set_always_gmt(wopts, opts->always_gmt);
iso_write_opts_set_rrip_version_1_10(wopts, opts->rrip_version_1_10); iso_write_opts_set_rrip_version_1_10(wopts, opts->rrip_version_1_10);
rec_mtime= 0; rec_mtime= 0;
@ -1065,6 +1066,7 @@ int isoburn_igopt_new(struct isoburn_imgen_opts **new_o, int flag)
o->allow_7bit_ascii= 0; o->allow_7bit_ascii= 0;
o->joliet_longer_paths= 0; o->joliet_longer_paths= 0;
o->joliet_long_names= 0; o->joliet_long_names= 0;
o->joliet_utf16= 0;
o->always_gmt= 0; o->always_gmt= 0;
o->rrip_version_1_10= 0; o->rrip_version_1_10= 0;
o->dir_rec_mtime= 0; o->dir_rec_mtime= 0;
@ -1195,6 +1197,7 @@ int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax)
o->joliet_rec_mtime= !!(relax & isoburn_igopt_joliet_rec_mtime); o->joliet_rec_mtime= !!(relax & isoburn_igopt_joliet_rec_mtime);
o->iso1999_rec_mtime= !!(relax & isoburn_igopt_iso1999_rec_mtime); o->iso1999_rec_mtime= !!(relax & isoburn_igopt_iso1999_rec_mtime);
o->allow_7bit_ascii= !!(relax & isoburn_igopt_allow_7bit_ascii); o->allow_7bit_ascii= !!(relax & isoburn_igopt_allow_7bit_ascii);
o->joliet_utf16= !!(relax & isoburn_igopt_joliet_utf16);
return(1); return(1);
} }
@ -1213,7 +1216,8 @@ int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax)
((!!o->joliet_long_names) << 15) | ((!!o->joliet_long_names) << 15) |
((!!o->joliet_rec_mtime) << 16) | ((!!o->joliet_rec_mtime) << 16) |
((!!o->iso1999_rec_mtime) << 17) | ((!!o->iso1999_rec_mtime) << 17) |
((!!o->allow_full_ascii) << 18); ((!!o->allow_full_ascii) << 18) |
((!!o->joliet_utf16) << 19);
return(1); return(1);
} }

View File

@ -529,6 +529,11 @@ struct isoburn_imgen_opts {
*/ */
unsigned int joliet_long_names :1; unsigned int joliet_long_names :1;
/**
* Use UTF-16BE rather than its subset UCS-2
*/
unsigned int joliet_utf16 :1;
/** /**
* Store timestamps as GMT rather than in local time. * Store timestamps as GMT rather than in local time.
*/ */

View File

@ -242,7 +242,7 @@ void isoburn_version(int *major, int *minor, int *micro);
*/ */
#define isoburn_libisofs_req_major 1 #define isoburn_libisofs_req_major 1
#define isoburn_libisofs_req_minor 3 #define isoburn_libisofs_req_minor 3
#define isoburn_libisofs_req_micro 4 #define isoburn_libisofs_req_micro 5
/** The minimum version of libburn to be used with this version of libisoburn /** The minimum version of libburn to be used with this version of libisoburn
at compile time. at compile time.
@ -1254,6 +1254,12 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
Lowercase letters get mapped to uppercase if not Lowercase letters get mapped to uppercase if not
allow_lowercase is set. allow_lowercase is set.
Gets overridden if allow_full_ascii is enabled. Gets overridden if allow_full_ascii is enabled.
bit19= joliet_utf16
Encode Joliet names by character set UTF-16BE rather than
UCS-2. The difference is with characters which are not present
in UCS-2 and get encoded in UTF-16 by 2 words of 16 bit each.
Both words then stem from a reserved subset of UCS-2.
@since 1.3.6
@return 1 success, <=0 failure @return 1 success, <=0 failure
*/ */
#define isoburn_igopt_omit_version_numbers 1 #define isoburn_igopt_omit_version_numbers 1
@ -1275,6 +1281,7 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
#define isoburn_igopt_joliet_rec_mtime 0x10000 #define isoburn_igopt_joliet_rec_mtime 0x10000
#define isoburn_igopt_iso1999_rec_mtime 0x20000 #define isoburn_igopt_iso1999_rec_mtime 0x20000
#define isoburn_igopt_allow_7bit_ascii 0x40000 #define isoburn_igopt_allow_7bit_ascii 0x40000
#define isoburn_igopt_joliet_utf16 0x80000
int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax); int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax);
int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax); int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax);

View File

@ -1 +1 @@
#define Xorriso_timestamP "2013.12.12.154238" #define Xorriso_timestamP "2013.12.18.074049"