Replaced some large local variables by other means
This commit is contained in:
parent
85288aeb8f
commit
cc30f4043b
@ -786,7 +786,7 @@ int Xorriso_update_interpreter(struct XorrisO *xorriso,
|
||||
struct stat stbuf;
|
||||
struct SplitparT *split_parts= NULL;
|
||||
int split_count= 0;
|
||||
char part_path[SfileadrL], *part_name;
|
||||
char *part_path= NULL, *part_name;
|
||||
int partno, total_parts, new_total_parts;
|
||||
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;
|
||||
}
|
||||
|
||||
Xorriso_alloc_meM(part_path, char, SfileadrL);
|
||||
|
||||
if((flag & 2) && !(compare_result & 2)) {
|
||||
ret= Xorriso_mark_update_merge(xorriso, iso_rr_path, node,
|
||||
!(compare_result & 1));
|
||||
@ -1001,6 +1003,7 @@ overwrite:;
|
||||
ex:;
|
||||
if(split_parts!=NULL)
|
||||
Splitparts_destroy(&split_parts, split_count, 0);
|
||||
Xorriso_free_meM(part_path);
|
||||
if(ret<=0)
|
||||
return(ret);
|
||||
if(deleted)
|
||||
|
@ -1080,13 +1080,15 @@ ex:;
|
||||
|
||||
int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
||||
{
|
||||
char adr[BURN_DRIVE_ADR_LEN];
|
||||
int i, j, max_dev_len= 1, pad;
|
||||
char *adr= NULL;
|
||||
int i, j, max_dev_len= 1, pad, ret;
|
||||
struct burn_drive_info *drive_list= NULL;
|
||||
unsigned int drive_count;
|
||||
char *respt, perms[8];
|
||||
struct stat stbuf;
|
||||
|
||||
Xorriso_alloc_meM(adr, char, BURN_DRIVE_ADR_LEN);
|
||||
|
||||
sprintf(xorriso->info_text, "Beginning to scan for devices ...\n");
|
||||
Xorriso_info(xorriso,0);
|
||||
|
||||
@ -1103,7 +1105,7 @@ int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
||||
|
||||
sprintf(xorriso->info_text, "No drives found");
|
||||
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");
|
||||
Xorriso_info(xorriso,0);
|
||||
@ -1147,7 +1149,10 @@ int Xorriso_show_devices(struct XorrisO *xorriso, int flag)
|
||||
|
||||
burn_drive_info_free(drive_list);
|
||||
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 *drive= NULL;
|
||||
off_t pos, data_count, to_read;
|
||||
char data[64 * 1024], data_md5[16];
|
||||
char *data= NULL, data_md5[16];
|
||||
void *ctx = NULL;
|
||||
|
||||
ret= Xorriso_get_drive_handles(xorriso, &dinfo, &drive,
|
||||
"on attempt to check session MD5 checksum", 0);
|
||||
if(ret <= 0)
|
||||
goto ex;
|
||||
|
||||
Xorriso_alloc_meM(data, char, 64 * 1024);
|
||||
|
||||
ret= iso_md5_start(&ctx);
|
||||
if(ret <= 0) {
|
||||
Xorriso_no_malloc_memory(xorriso, NULL, 0);
|
||||
@ -1614,6 +1622,7 @@ ex:;
|
||||
Xorriso_process_msg_queues(xorriso,0);
|
||||
if(ctx != NULL)
|
||||
iso_md5_end(&ctx, data_md5);
|
||||
Xorriso_free_meM(data);
|
||||
return(ret);
|
||||
}
|
||||
|
||||
|
@ -705,7 +705,7 @@ int Xorriso_show_boot_info(struct XorrisO *xorriso, int flag)
|
||||
unsigned int mbr_lba= 0;
|
||||
off_t lb0_count;
|
||||
char *respt, *path;
|
||||
unsigned char lb0[2048];
|
||||
unsigned char *lb0= NULL;
|
||||
struct burn_drive_info *dinfo;
|
||||
struct burn_drive *drive;
|
||||
IsoImage *image= NULL;
|
||||
@ -714,6 +714,8 @@ int Xorriso_show_boot_info(struct XorrisO *xorriso, int flag)
|
||||
IsoBoot *bootcat_node;
|
||||
|
||||
Xorriso_alloc_meM(path, char, SfileadrL);
|
||||
Xorriso_alloc_meM(lb0, unsigned char, 2048);
|
||||
|
||||
respt= xorriso->result_line;
|
||||
|
||||
if(xorriso->boot_count > 0) {
|
||||
@ -837,6 +839,7 @@ ex:;
|
||||
if(image != NULL)
|
||||
iso_image_unref(image); /* release obtained reference */
|
||||
Xorriso_free_meM(path);
|
||||
Xorriso_free_meM(lb0);
|
||||
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 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 CheckmediajoB *job= 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);
|
||||
(*idx)= end_idx;
|
||||
|
||||
Xorriso_alloc_meM(head_buffer, char, 64 * 1024);
|
||||
|
||||
ret= Checkmediajob_new(&job, 0);
|
||||
if(ret <= 0)
|
||||
goto ex;
|
||||
@ -1531,6 +1533,7 @@ ex:;
|
||||
}
|
||||
Spotlist_destroy(&spotlist, 0);
|
||||
Checkmediajob_destroy(&job, 0);
|
||||
Xorriso_free_meM(head_buffer);
|
||||
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;
|
||||
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;
|
||||
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++;
|
||||
#endif /* NIX */
|
||||
|
||||
msg= TSOB_FELD(char, ISO_MSGS_MESSAGE_LEN);
|
||||
if(msg == NULL)
|
||||
{ret= -1; goto ex;}
|
||||
*dev= 0;
|
||||
*ino= 0;
|
||||
ret= iso_node_lookup_attr(node, name, &value_length, &value, 0);
|
||||
if(ret <= 0) {
|
||||
/* Drop any pending messages because there is no xorriso to take them */
|
||||
iso_obtain_msgs("NEVER", &error_code, &imgid, msg, severity);
|
||||
return(ret);
|
||||
goto ex;
|
||||
}
|
||||
vpt= (unsigned char *) value;
|
||||
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++)
|
||||
*ino= ((*ino) << 8) | vpt[i];
|
||||
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;
|
||||
char *line, *sfe= NULL, mode[80], *form, *treatment;
|
||||
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 load_names[][20]= {"auto", "session", "track", "lba", "volid"};
|
||||
static int max_load_mode= 4;
|
||||
struct Xorriso_lsT *paths, *leafs, *s, *plst, *vlst;
|
||||
|
||||
Xorriso_alloc_meM(sfe, char, 5 * SfileadrL + 80);
|
||||
Xorriso_alloc_meM(xorriso_id, char, 129);
|
||||
|
||||
no_defaults= flag&1;
|
||||
line= xorriso->result_line;
|
||||
@ -1974,6 +1975,7 @@ int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag)
|
||||
ret= 1;
|
||||
ex:;
|
||||
Xorriso_free_meM(sfe);
|
||||
Xorriso_free_meM(xorriso_id);
|
||||
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;
|
||||
char volid[33];
|
||||
FILE *fp= NULL;
|
||||
char buf[32768], *bufpt= NULL;
|
||||
char *buf= NULL, *bufpt= NULL;
|
||||
off_t hd_lba;
|
||||
unsigned char *ub;
|
||||
ElToritoBootImage *bootimg;
|
||||
@ -260,6 +260,7 @@ int Xorriso_set_system_area(struct XorrisO *xorriso, struct burn_drive *drive,
|
||||
uint32_t offst;
|
||||
enum burn_disc_status state;
|
||||
|
||||
Xorriso_alloc_meM(buf, char, 32768);
|
||||
system_area_options= xorriso->system_area_options;
|
||||
memset(buf, 0, 32768);
|
||||
if(xorriso->system_area_disk_path[0] == 0) {
|
||||
@ -379,6 +380,7 @@ do_set:;
|
||||
ex:;
|
||||
if(fp != NULL && fp != stdin)
|
||||
fclose(fp);
|
||||
Xorriso_free_meM(buf);
|
||||
return(ret);
|
||||
}
|
||||
|
||||
@ -1896,7 +1898,7 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
|
||||
char *npt, *cpt;
|
||||
int l, was, value, ret;
|
||||
struct isoburn_imgen_opts *opts= NULL;
|
||||
char msg[160];
|
||||
char *msg= NULL;
|
||||
off_t limit;
|
||||
|
||||
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)
|
||||
xorriso->file_size_limit= Xorriso_default_file_size_limiT;
|
||||
} else {
|
||||
Xorriso_alloc_meM(msg, char, 160);
|
||||
sprintf(msg,
|
||||
"-compliance iso_9660_level=%d : Only 1, 2, or 3 are permissible",
|
||||
value);
|
||||
Xorriso_msgs_submit(xorriso, 0, msg, 0, "FAILURE", 0);
|
||||
Xorriso_free_meM(msg);
|
||||
msg= NULL;
|
||||
xorriso->relax_compliance= was;
|
||||
return(0);
|
||||
}
|
||||
@ -2103,6 +2108,9 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
|
||||
}
|
||||
}
|
||||
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