summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nandwrite.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/nandwrite.c b/nandwrite.c
index e90c032..95baa38 100644
--- a/nandwrite.c
+++ b/nandwrite.c
@@ -497,7 +497,6 @@ int main(int argc, char * const argv[])
if (!noecc) {
int i, start, len;
- int tags_pos = 0;
struct nand_oobinfo old_oobinfo;
/* Read the current oob info */
@@ -515,16 +514,13 @@ int main(int argc, char * const argv[])
* such as the layout used by diskonchip.c
*/
if (old_oobinfo.useecc == MTD_NANDECC_AUTOPLACE) {
+ int tags_pos = 0, tmp_ofs;
for (i = 0; old_oobinfo.oobfree[i][1]; i++) {
/* Set the reserved bytes to 0xff */
start = old_oobinfo.oobfree[i][0];
len = old_oobinfo.oobfree[i][1];
- if (rawoob)
- memcpy(oobbuf + start,
- oobreadbuf + start, len);
- else
- memcpy(oobbuf + start,
- oobreadbuf + tags_pos, len);
+ tmp_ofs = rawoob ? start : tags_pos;
+ memcpy(oobbuf + start, oobreadbuf + tmp_ofs, len);
tags_pos += len;
}
} else {