Assemble: change 'skip' label to a variable.
This gets rid of some gotos which makes the code flow a bit more clear. Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
2b594614a1
commit
fa0312397e
33
Assemble.c
33
Assemble.c
|
@ -352,6 +352,7 @@ int Assemble(struct supertype *st, char *mddev,
|
|||
|
||||
if (tst->ss->container_content
|
||||
&& tst->loaded_container) {
|
||||
int skip = 0;
|
||||
/* tmpdev is a container. We need to be either
|
||||
* looking for a member, or auto-assembling
|
||||
*/
|
||||
|
@ -415,7 +416,22 @@ int Assemble(struct supertype *st, char *mddev,
|
|||
fprintf(stderr, Name ": member %s in %s is already assembled\n",
|
||||
content->text_version,
|
||||
devname);
|
||||
skip:
|
||||
skip = 1;
|
||||
} else if (ident->member && ident->member[0]) {
|
||||
char *s = strchr(content->text_version+1, '/');
|
||||
if (s == NULL) {
|
||||
fprintf(stderr, Name ": badly formatted version: %s\n",
|
||||
content->text_version);
|
||||
skip = 1;
|
||||
} else if (strcmp(ident->member, s+1) != 0) {
|
||||
if (report_missmatch)
|
||||
fprintf(stderr,
|
||||
Name ": skipping wrong member %s\n",
|
||||
content->text_version);
|
||||
skip = 1;
|
||||
}
|
||||
}
|
||||
if (skip) {
|
||||
content = content->next;
|
||||
if (content)
|
||||
goto next_member;
|
||||
|
@ -426,21 +442,6 @@ int Assemble(struct supertype *st, char *mddev,
|
|||
dev_policy_free(pol);
|
||||
return 1;
|
||||
}
|
||||
if (ident->member && ident->member[0]) {
|
||||
char *s = strchr(content->text_version+1, '/');
|
||||
if (s == NULL) {
|
||||
fprintf(stderr, Name ": badly formatted version: %s\n",
|
||||
content->text_version);
|
||||
goto skip;
|
||||
}
|
||||
if (strcmp(ident->member, s+1) != 0) {
|
||||
if (report_missmatch)
|
||||
fprintf(stderr,
|
||||
Name ": skipping wrong member %s\n",
|
||||
content->text_version);
|
||||
goto skip;
|
||||
}
|
||||
}
|
||||
st = tst; tst = NULL;
|
||||
if (!auto_assem && inargv && tmpdev->next != NULL) {
|
||||
fprintf(stderr, Name ": %s is a container, but is not "
|
||||
|
|
Loading…
Reference in New Issue