diff options
Diffstat (limited to 'drivers/mtd/ubi/scan.c')
| -rw-r--r-- | drivers/mtd/ubi/scan.c | 7 | 
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/mtd/ubi/scan.c b/drivers/mtd/ubi/scan.c index e7161adc419..90af61a2c3e 100644 --- a/drivers/mtd/ubi/scan.c +++ b/drivers/mtd/ubi/scan.c @@ -794,16 +794,15 @@ static int process_eb(struct ubi_device *ubi, struct ubi_scan_info *si,  		 * number.  		 */  		image_seq = be32_to_cpu(ech->image_seq); -		if (!si->image_seq_set) { +		if (!ubi->image_seq && image_seq)  			ubi->image_seq = image_seq; -			si->image_seq_set = 1; -		} else if (ubi->image_seq && ubi->image_seq != image_seq) { +		if (ubi->image_seq && image_seq && +		    ubi->image_seq != image_seq) {  			ubi_err("bad image sequence number %d in PEB %d, "  				"expected %d", image_seq, pnum, ubi->image_seq);  			ubi_dbg_dump_ec_hdr(ech);  			return -EINVAL;  		} -  	}  	/* OK, we've done with the EC header, let's look at the VID header */  |