if (load_ddf_header(fd, __be64_to_cpu(super->anchor.secondary_lba),
dsize >> 9, 2,
&super->secondary, &super->anchor)) {
- if ((__be32_to_cpu(super->primary.seq)
- < __be32_to_cpu(super->secondary.seq) &&
- !super->secondary.openflag)
+ if (super->active == NULL
+ || (__be32_to_cpu(super->primary.seq)
+ < __be32_to_cpu(super->secondary.seq) &&
+ !super->secondary.openflag)
|| (__be32_to_cpu(super->primary.seq)
== __be32_to_cpu(super->secondary.seq) &&
super->primary.openflag && !super->secondary.openflag)
- || super->active == NULL
)
super->active = &super->secondary;
} else if (devname)