Replaced some large local variables by other means
This commit is contained in:
parent
f5ceb22dea
commit
1b3558580e
@ -786,7 +786,7 @@ int Xorriso_update_interpreter(struct XorrisO *xorriso,
|
|||||||
struct stat stbuf;
|
struct stat stbuf;
|
||||||
struct SplitparT *split_parts= NULL;
|
struct SplitparT *split_parts= NULL;
|
||||||
int split_count= 0;
|
int split_count= 0;
|
||||||
char part_path[SfileadrL], *part_name;
|
char *part_path= NULL, *part_name;
|
||||||
int partno, total_parts, new_total_parts;
|
int partno, total_parts, new_total_parts;
|
||||||
off_t offset, bytes, total_bytes, disk_size, first_bytes;
|
off_t offset, bytes, total_bytes, disk_size, first_bytes;
|
||||||
|
|
||||||
@ -798,6 +798,8 @@ int Xorriso_update_interpreter(struct XorrisO *xorriso,
|
|||||||
ret= 3; goto ex;
|
ret= 3; goto ex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Xorriso_alloc_meM(part_path, char, SfileadrL);
|
||||||
|
|
||||||
if((flag & 2) && !(compare_result & 2)) {
|
if((flag & 2) && !(compare_result & 2)) {
|
||||||
ret= Xorriso_mark_update_merge(xorriso, iso_rr_path, node,
|
ret= Xorriso_mark_update_merge(xorriso, iso_rr_path, node,
|
||||||
!(compare_result & 1));
|
!(compare_result & 1));
|
||||||
@ -1001,6 +1003,7 @@ overwrite:;
|
|||||||
ex:;
|
ex:;
|
||||||
if(split_parts!=NULL)
|
if(split_parts!=NULL)
|
||||||
Splitparts_destroy(&split_parts, split_count, 0);
|
Splitparts_destroy(&split_parts, split_count, 0);
|
||||||
|
Xorriso_free_meM(part_path);
|
||||||
if(ret<=0)
|
if(ret<=0)
|
||||||
return(ret);
|
return(ret);
|
||||||
if(deleted)
|
if(deleted)
|
||||||
|
@ -1080,13 +1080,15 @@ ex:;
|
|||||||
|
|
||||||
int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
||||||
{
|
{
|
||||||
char adr[BURN_DRIVE_ADR_LEN];
|
char *adr= NULL;
|
||||||
int i, j, max_dev_len= 1, pad;
|
int i, j, max_dev_len= 1, pad, ret;
|
||||||
struct burn_drive_info *drive_list= NULL;
|
struct burn_drive_info *drive_list= NULL;
|
||||||
unsigned int drive_count;
|
unsigned int drive_count;
|
||||||
char *respt, perms[8];
|
char *respt, perms[8];
|
||||||
struct stat stbuf;
|
struct stat stbuf;
|
||||||
|
|
||||||
|
Xorriso_alloc_meM(adr, char, BURN_DRIVE_ADR_LEN);
|
||||||
|
|
||||||
sprintf(xorriso->info_text, "Beginning to scan for devices ...\n");
|
sprintf(xorriso->info_text, "Beginning to scan for devices ...\n");
|
||||||
Xorriso_info(xorriso,0);
|
Xorriso_info(xorriso,0);
|
||||||
|
|
||||||
@ -1103,7 +1105,7 @@ int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
|||||||
|
|
||||||
sprintf(xorriso->info_text, "No drives found");
|
sprintf(xorriso->info_text, "No drives found");
|
||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "SORRY", 0);
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "SORRY", 0);
|
||||||
return(0);
|
{ret= 0; goto ex;}
|
||||||
}
|
}
|
||||||
sprintf(xorriso->info_text, "Full drive scan done\n");
|
sprintf(xorriso->info_text, "Full drive scan done\n");
|
||||||
Xorriso_info(xorriso,0);
|
Xorriso_info(xorriso,0);
|
||||||
@ -1147,7 +1149,10 @@ int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
|||||||
|
|
||||||
burn_drive_info_free(drive_list);
|
burn_drive_info_free(drive_list);
|
||||||
Xorriso_process_msg_queues(xorriso,0);
|
Xorriso_process_msg_queues(xorriso,0);
|
||||||
return(1);
|
ret= 1;
|
||||||
|
ex:;
|
||||||
|
Xorriso_free_meM(adr);
|
||||||
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1580,13 +1585,16 @@ int Xorriso_check_md5_range(struct XorrisO *xorriso, off_t start_lba,
|
|||||||
struct burn_drive_info *dinfo= NULL;
|
struct burn_drive_info *dinfo= NULL;
|
||||||
struct burn_drive *drive= NULL;
|
struct burn_drive *drive= NULL;
|
||||||
off_t pos, data_count, to_read;
|
off_t pos, data_count, to_read;
|
||||||
char data[64 * 1024], data_md5[16];
|
char *data= NULL, data_md5[16];
|
||||||
void *ctx = NULL;
|
void *ctx = NULL;
|
||||||
|
|
||||||
ret= Xorriso_get_drive_handles(xorriso, &dinfo, &drive,
|
ret= Xorriso_get_drive_handles(xorriso, &dinfo, &drive,
|
||||||
"on attempt to check session MD5 checksum", 0);
|
"on attempt to check session MD5 checksum", 0);
|
||||||
if(ret <= 0)
|
if(ret <= 0)
|
||||||
goto ex;
|
goto ex;
|
||||||
|
|
||||||
|
Xorriso_alloc_meM(data, char, 64 * 1024);
|
||||||
|
|
||||||
ret= iso_md5_start(&ctx);
|
ret= iso_md5_start(&ctx);
|
||||||
if(ret <= 0) {
|
if(ret <= 0) {
|
||||||
Xorriso_no_malloc_memory(xorriso, NULL, 0);
|
Xorriso_no_malloc_memory(xorriso, NULL, 0);
|
||||||
@ -1614,6 +1622,7 @@ ex:;
|
|||||||
Xorriso_process_msg_queues(xorriso,0);
|
Xorriso_process_msg_queues(xorriso,0);
|
||||||
if(ctx != NULL)
|
if(ctx != NULL)
|
||||||
iso_md5_end(&ctx, data_md5);
|
iso_md5_end(&ctx, data_md5);
|
||||||
|
Xorriso_free_meM(data);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -705,7 +705,7 @@ int Xorriso_show_boot_info(struct XorrisO *xorriso, int flag)
|
|||||||
unsigned int mbr_lba= 0;
|
unsigned int mbr_lba= 0;
|
||||||
off_t lb0_count;
|
off_t lb0_count;
|
||||||
char *respt, *path;
|
char *respt, *path;
|
||||||
unsigned char lb0[2048];
|
unsigned char *lb0= NULL;
|
||||||
struct burn_drive_info *dinfo;
|
struct burn_drive_info *dinfo;
|
||||||
struct burn_drive *drive;
|
struct burn_drive *drive;
|
||||||
IsoImage *image= NULL;
|
IsoImage *image= NULL;
|
||||||
@ -714,6 +714,8 @@ int Xorriso_show_boot_info(struct XorrisO *xorriso, int flag)
|
|||||||
IsoBoot *bootcat_node;
|
IsoBoot *bootcat_node;
|
||||||
|
|
||||||
Xorriso_alloc_meM(path, char, SfileadrL);
|
Xorriso_alloc_meM(path, char, SfileadrL);
|
||||||
|
Xorriso_alloc_meM(lb0, unsigned char, 2048);
|
||||||
|
|
||||||
respt= xorriso->result_line;
|
respt= xorriso->result_line;
|
||||||
|
|
||||||
if(xorriso->boot_count > 0) {
|
if(xorriso->boot_count > 0) {
|
||||||
@ -837,6 +839,7 @@ ex:;
|
|||||||
if(image != NULL)
|
if(image != NULL)
|
||||||
iso_image_unref(image); /* release obtained reference */
|
iso_image_unref(image); /* release obtained reference */
|
||||||
Xorriso_free_meM(path);
|
Xorriso_free_meM(path);
|
||||||
|
Xorriso_free_meM(lb0);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1396,7 +1396,7 @@ int Xorriso_option_check_media(struct XorrisO *xorriso,
|
|||||||
{
|
{
|
||||||
int ret, i, count, lba, blocks, quality, pass, was_md5= 0, was_event= 0;
|
int ret, i, count, lba, blocks, quality, pass, was_md5= 0, was_event= 0;
|
||||||
int end_idx, old_idx, os_errno;
|
int end_idx, old_idx, os_errno;
|
||||||
char quality_name[80], head_buffer[64*1024];
|
char quality_name[80], *head_buffer= NULL;
|
||||||
struct SpotlisT *spotlist= NULL;
|
struct SpotlisT *spotlist= NULL;
|
||||||
struct CheckmediajoB *job= NULL;
|
struct CheckmediajoB *job= NULL;
|
||||||
struct FindjoB *findjob= NULL;
|
struct FindjoB *findjob= NULL;
|
||||||
@ -1406,6 +1406,8 @@ int Xorriso_option_check_media(struct XorrisO *xorriso,
|
|||||||
end_idx= Xorriso_end_idx(xorriso, argc, argv, *idx, 1);
|
end_idx= Xorriso_end_idx(xorriso, argc, argv, *idx, 1);
|
||||||
(*idx)= end_idx;
|
(*idx)= end_idx;
|
||||||
|
|
||||||
|
Xorriso_alloc_meM(head_buffer, char, 64 * 1024);
|
||||||
|
|
||||||
ret= Checkmediajob_new(&job, 0);
|
ret= Checkmediajob_new(&job, 0);
|
||||||
if(ret <= 0)
|
if(ret <= 0)
|
||||||
goto ex;
|
goto ex;
|
||||||
@ -1531,6 +1533,7 @@ ex:;
|
|||||||
}
|
}
|
||||||
Spotlist_destroy(&spotlist, 0);
|
Spotlist_destroy(&spotlist, 0);
|
||||||
Checkmediajob_destroy(&job, 0);
|
Checkmediajob_destroy(&job, 0);
|
||||||
|
Xorriso_free_meM(head_buffer);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -146,7 +146,7 @@ int Xorriso__get_di(IsoNode *node, dev_t *dev, ino_t *ino, int flag)
|
|||||||
{
|
{
|
||||||
int ret, i, i_end, imgid, error_code;
|
int ret, i, i_end, imgid, error_code;
|
||||||
size_t value_length= 0;
|
size_t value_length= 0;
|
||||||
char *value= NULL, msg[ISO_MSGS_MESSAGE_LEN], severity[80];
|
char *value= NULL, *msg= NULL, severity[80];
|
||||||
unsigned char *vpt;
|
unsigned char *vpt;
|
||||||
static char *name= "isofs.di";
|
static char *name= "isofs.di";
|
||||||
|
|
||||||
@ -155,13 +155,16 @@ int Xorriso__get_di(IsoNode *node, dev_t *dev, ino_t *ino, int flag)
|
|||||||
Xorriso_get_di_counteR++;
|
Xorriso_get_di_counteR++;
|
||||||
#endif /* NIX */
|
#endif /* NIX */
|
||||||
|
|
||||||
|
msg= TSOB_FELD(char, ISO_MSGS_MESSAGE_LEN);
|
||||||
|
if(msg == NULL)
|
||||||
|
{ret= -1; goto ex;}
|
||||||
*dev= 0;
|
*dev= 0;
|
||||||
*ino= 0;
|
*ino= 0;
|
||||||
ret= iso_node_lookup_attr(node, name, &value_length, &value, 0);
|
ret= iso_node_lookup_attr(node, name, &value_length, &value, 0);
|
||||||
if(ret <= 0) {
|
if(ret <= 0) {
|
||||||
/* Drop any pending messages because there is no xorriso to take them */
|
/* Drop any pending messages because there is no xorriso to take them */
|
||||||
iso_obtain_msgs("NEVER", &error_code, &imgid, msg, severity);
|
iso_obtain_msgs("NEVER", &error_code, &imgid, msg, severity);
|
||||||
return(ret);
|
goto ex;
|
||||||
}
|
}
|
||||||
vpt= (unsigned char *) value;
|
vpt= (unsigned char *) value;
|
||||||
for(i= 1; i <= vpt[0] && i < value_length; i++)
|
for(i= 1; i <= vpt[0] && i < value_length; i++)
|
||||||
@ -170,7 +173,11 @@ int Xorriso__get_di(IsoNode *node, dev_t *dev, ino_t *ino, int flag)
|
|||||||
for(i++; i < i_end && i < value_length; i++)
|
for(i++; i < i_end && i < value_length; i++)
|
||||||
*ino= ((*ino) << 8) | vpt[i];
|
*ino= ((*ino) << 8) | vpt[i];
|
||||||
free(value);
|
free(value);
|
||||||
return(1);
|
ret= 1;
|
||||||
|
ex:;
|
||||||
|
if(msg != NULL)
|
||||||
|
free(msg);
|
||||||
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1111,13 +1111,14 @@ int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag)
|
|||||||
int part_table_implicit= 0;
|
int part_table_implicit= 0;
|
||||||
char *line, *sfe= NULL, mode[80], *form, *treatment;
|
char *line, *sfe= NULL, mode[80], *form, *treatment;
|
||||||
char *in_pt, *out_pt, *nl_charset, *local_charset, *mode_pt;
|
char *in_pt, *out_pt, *nl_charset, *local_charset, *mode_pt;
|
||||||
char *dev_filter= NULL, xorriso_id[129];
|
char *dev_filter= NULL, *xorriso_id= NULL;
|
||||||
static char channel_prefixes[4][4]= {".","R","I","M"};
|
static char channel_prefixes[4][4]= {".","R","I","M"};
|
||||||
static char load_names[][20]= {"auto", "session", "track", "lba", "volid"};
|
static char load_names[][20]= {"auto", "session", "track", "lba", "volid"};
|
||||||
static int max_load_mode= 4;
|
static int max_load_mode= 4;
|
||||||
struct Xorriso_lsT *paths, *leafs, *s, *plst, *vlst;
|
struct Xorriso_lsT *paths, *leafs, *s, *plst, *vlst;
|
||||||
|
|
||||||
Xorriso_alloc_meM(sfe, char, 5 * SfileadrL + 80);
|
Xorriso_alloc_meM(sfe, char, 5 * SfileadrL + 80);
|
||||||
|
Xorriso_alloc_meM(xorriso_id, char, 129);
|
||||||
|
|
||||||
no_defaults= flag&1;
|
no_defaults= flag&1;
|
||||||
line= xorriso->result_line;
|
line= xorriso->result_line;
|
||||||
@ -1974,6 +1975,7 @@ int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag)
|
|||||||
ret= 1;
|
ret= 1;
|
||||||
ex:;
|
ex:;
|
||||||
Xorriso_free_meM(sfe);
|
Xorriso_free_meM(sfe);
|
||||||
|
Xorriso_free_meM(xorriso_id);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -252,7 +252,7 @@ int Xorriso_set_system_area(struct XorrisO *xorriso, struct burn_drive *drive,
|
|||||||
int ret, options, system_area_options, iso_lba= -1, start_lba, image_blocks;
|
int ret, options, system_area_options, iso_lba= -1, start_lba, image_blocks;
|
||||||
char volid[33];
|
char volid[33];
|
||||||
FILE *fp= NULL;
|
FILE *fp= NULL;
|
||||||
char buf[32768], *bufpt= NULL;
|
char *buf= NULL, *bufpt= NULL;
|
||||||
off_t hd_lba;
|
off_t hd_lba;
|
||||||
unsigned char *ub;
|
unsigned char *ub;
|
||||||
ElToritoBootImage *bootimg;
|
ElToritoBootImage *bootimg;
|
||||||
@ -260,6 +260,7 @@ int Xorriso_set_system_area(struct XorrisO *xorriso, struct burn_drive *drive,
|
|||||||
uint32_t offst;
|
uint32_t offst;
|
||||||
enum burn_disc_status state;
|
enum burn_disc_status state;
|
||||||
|
|
||||||
|
Xorriso_alloc_meM(buf, char, 32768);
|
||||||
system_area_options= xorriso->system_area_options;
|
system_area_options= xorriso->system_area_options;
|
||||||
memset(buf, 0, 32768);
|
memset(buf, 0, 32768);
|
||||||
if(xorriso->system_area_disk_path[0] == 0) {
|
if(xorriso->system_area_disk_path[0] == 0) {
|
||||||
@ -379,6 +380,7 @@ do_set:;
|
|||||||
ex:;
|
ex:;
|
||||||
if(fp != NULL && fp != stdin)
|
if(fp != NULL && fp != stdin)
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
Xorriso_free_meM(buf);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1896,7 +1898,7 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
|
|||||||
char *npt, *cpt;
|
char *npt, *cpt;
|
||||||
int l, was, value, ret;
|
int l, was, value, ret;
|
||||||
struct isoburn_imgen_opts *opts= NULL;
|
struct isoburn_imgen_opts *opts= NULL;
|
||||||
char msg[160];
|
char *msg= NULL;
|
||||||
off_t limit;
|
off_t limit;
|
||||||
|
|
||||||
was= xorriso->relax_compliance;
|
was= xorriso->relax_compliance;
|
||||||
@ -2065,10 +2067,13 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
|
|||||||
if(xorriso->file_size_limit < Xorriso_default_file_size_limiT)
|
if(xorriso->file_size_limit < Xorriso_default_file_size_limiT)
|
||||||
xorriso->file_size_limit= Xorriso_default_file_size_limiT;
|
xorriso->file_size_limit= Xorriso_default_file_size_limiT;
|
||||||
} else {
|
} else {
|
||||||
|
Xorriso_alloc_meM(msg, char, 160);
|
||||||
sprintf(msg,
|
sprintf(msg,
|
||||||
"-compliance iso_9660_level=%d : Only 1, 2, or 3 are permissible",
|
"-compliance iso_9660_level=%d : Only 1, 2, or 3 are permissible",
|
||||||
value);
|
value);
|
||||||
Xorriso_msgs_submit(xorriso, 0, msg, 0, "FAILURE", 0);
|
Xorriso_msgs_submit(xorriso, 0, msg, 0, "FAILURE", 0);
|
||||||
|
Xorriso_free_meM(msg);
|
||||||
|
msg= NULL;
|
||||||
xorriso->relax_compliance= was;
|
xorriso->relax_compliance= was;
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
@ -2103,6 +2108,9 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return(1);
|
return(1);
|
||||||
|
ex:;
|
||||||
|
Xorriso_free_meM(msg);
|
||||||
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
#define Xorriso_timestamP "2011.05.08.083929"
|
#define Xorriso_timestamP "2011.05.08.174805"
|
||||||
|
Loading…
Reference in New Issue
Block a user