Fix an error when assembling arrays that are in the middle of a reshape.
It is important that dup_super always returns an 'st' with the same ->ss and ->minor_version as the st that was passed. This wasn't happening for 0.91 metadata (i.e. in the middle of a reshape).
This commit is contained in:
parent
866d136a2f
commit
56f8add211
5
super0.c
5
super0.c
|
@ -849,12 +849,15 @@ static struct supertype *match_metadata_desc0(char *arg)
|
|||
st->sb = NULL;
|
||||
if (strcmp(arg, "0") == 0 ||
|
||||
strcmp(arg, "0.90") == 0 ||
|
||||
strcmp(arg, "0.91") == 0 ||
|
||||
strcmp(arg, "default") == 0 ||
|
||||
strcmp(arg, "") == 0 /* no metadata */
|
||||
)
|
||||
return st;
|
||||
|
||||
st->minor_version = 91; /* reshape in progress */
|
||||
if (strcmp(arg, "0.91") == 0) /* For dup_super support */
|
||||
return st;
|
||||
|
||||
st->minor_version = 9; /* flag for 'byte-swapped' */
|
||||
if (strcmp(arg, "0.swap")==0 ||
|
||||
strcmp(arg, "0.9") == 0) /* For dup_super support */
|
||||
|
|
Loading…
Reference in New Issue