Bug fix: -extract was not immediately aborted if -abort_on was triggered
This commit is contained in:
parent
2097f2406a
commit
bacf9be002
@ -1,7 +1,7 @@
|
||||
|
||||
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
|
||||
|
||||
Copyright 2007-2010 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
Copyright 2007-2011 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
|
||||
Provided under GPL version 2 or later.
|
||||
|
||||
@ -1413,7 +1413,7 @@ int Xorriso_restore_sorted(struct XorrisO *xorriso, int count,
|
||||
(off_t) 0, (off_t) 0, hflag);
|
||||
if(ret <= 0) {
|
||||
(*problem_count)++;
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 0);
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(hret < 0)
|
||||
goto ex;
|
||||
}
|
||||
@ -1436,7 +1436,7 @@ int Xorriso_restore_sorted(struct XorrisO *xorriso, int count,
|
||||
(off_t) 0, (off_t) 0, (2 << 7) | (flag & 32));
|
||||
if(ret <= 0) {
|
||||
(*problem_count)++;
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 0);
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(hret < 0)
|
||||
goto ex;
|
||||
}
|
||||
@ -1456,8 +1456,8 @@ int Xorriso_restore_sorted(struct XorrisO *xorriso, int count,
|
||||
(off_t) 0, (off_t) 0, flag & 32);
|
||||
if(ret <= 0) {
|
||||
(*problem_count)++;
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 0);
|
||||
if(ret < 0)
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(hret < 0)
|
||||
goto ex;
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
|
||||
|
||||
Copyright 2007-2010 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
Copyright 2007-2011 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
|
||||
Provided under GPL version 2 or later.
|
||||
|
||||
@ -581,7 +581,7 @@ int Xorriso_option_map_l(struct XorrisO *xorriso, int argc, char **argv,
|
||||
if(ret>0 && !xorriso->request_to_abort)
|
||||
continue; /* regular bottom of loop */
|
||||
was_failure= 1;
|
||||
fret= Xorriso_eval_problem_status(xorriso, ret, 2);
|
||||
fret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(fret>=0)
|
||||
continue;
|
||||
goto ex;
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
|
||||
|
||||
Copyright 2007-2010 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
Copyright 2007-2011 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
|
||||
Provided under GPL version 2 or later.
|
||||
|
||||
@ -1007,7 +1007,7 @@ int Xorriso_restore_disk_object(struct XorrisO *xorriso,
|
||||
}
|
||||
if(ret & 4) {
|
||||
/* Found siblings with non-NULL target, but did not link. */
|
||||
ret= Xorriso_eval_problem_status(xorriso, 1, 0);
|
||||
ret= Xorriso_eval_problem_status(xorriso, 1, 1 | 2);
|
||||
if(ret < 0)
|
||||
{ret= 0; goto ex;}
|
||||
}
|
||||
@ -1574,15 +1574,24 @@ attach_source:;
|
||||
} else if(is_dir && !source_is_split) {
|
||||
|
||||
if(!node_register) {
|
||||
if(new_dir_made) /* keep open and push to Permstack */
|
||||
Xorriso_restore_properties(xorriso, disk_path, node,
|
||||
if(new_dir_made) { /* keep open and push to Permstack */
|
||||
ret= Xorriso_restore_properties(xorriso, disk_path, node,
|
||||
2 | !!(flag&64));
|
||||
if(ret <= 0) {
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(hret < 0)
|
||||
goto ex;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(!(flag&32)) {
|
||||
ret= Xorriso_restore_tree(xorriso, (IsoDir *) node, img_path, path,
|
||||
(off_t) 0, NULL, flag & (2 | 64 | (3 << 7)));
|
||||
if(ret<=0)
|
||||
goto ex;
|
||||
if(ret <= 0) {
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(hret < 0)
|
||||
goto ex;
|
||||
}
|
||||
if(new_dir_made && !(flag&64))
|
||||
/* set timestamps which Permstack_pop() will not set */
|
||||
Xorriso_restore_properties(xorriso, disk_path, node, 2);
|
||||
@ -1598,8 +1607,11 @@ attach_source:;
|
||||
} else {
|
||||
ret= Xorriso_restore_disk_object(xorriso, img_path, node, path,
|
||||
offset, bytes, (flag & (2|4|64)) | !!(flag&8));
|
||||
if(ret<=0)
|
||||
goto ex;
|
||||
if(ret <= 0) {
|
||||
hret= Xorriso_eval_problem_status(xorriso, ret, 1 | 2);
|
||||
if(hret < 0)
|
||||
goto ex;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else
|
||||
@ -1682,7 +1694,7 @@ int Xorriso_restore_node_array(struct XorrisO *xorriso, int flag)
|
||||
}
|
||||
if(ret & 4) {
|
||||
/* Found elder siblings, but did not link. */
|
||||
ret= Xorriso_eval_problem_status(xorriso, 1, 0);
|
||||
ret= Xorriso_eval_problem_status(xorriso, 1, 1 | 2);
|
||||
if(ret < 0)
|
||||
{ret= 0; goto ex;}
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
#define Xorriso_timestamP "2011.08.15.132616"
|
||||
#define Xorriso_timestamP "2011.08.15.171835"
|
||||
|
Loading…
Reference in New Issue
Block a user