Fix for segfault in handle_nand_dump_command.

__archive__
Paul Richards 2010-12-15 21:42:03 +09:00 committed by Øyvind Harboe
parent 969b1e66dd
commit 5787853bc1
1 changed files with 5 additions and 5 deletions

View File

@ -357,6 +357,7 @@ COMMAND_HANDLER(handle_nand_verify_command)
COMMAND_HANDLER(handle_nand_dump_command) COMMAND_HANDLER(handle_nand_dump_command)
{ {
int filesize;
struct nand_device *nand = NULL; struct nand_device *nand = NULL;
struct nand_fileio_state s; struct nand_fileio_state s;
int retval = CALL_COMMAND_HANDLER(nand_fileio_parse_args, int retval = CALL_COMMAND_HANDLER(nand_fileio_parse_args,
@ -386,13 +387,12 @@ COMMAND_HANDLER(handle_nand_dump_command)
s.address += nand->page_size; s.address += nand->page_size;
} }
if (nand_fileio_finish(&s) == ERROR_OK)
{
int filesize;
retval = fileio_size(&s.fileio, &filesize); retval = fileio_size(&s.fileio, &filesize);
if (retval != ERROR_OK) if (retval != ERROR_OK)
return retval; return retval;
if (nand_fileio_finish(&s) == ERROR_OK)
{
command_print(CMD_CTX, "dumped %ld bytes in %fs (%0.3f KiB/s)", command_print(CMD_CTX, "dumped %ld bytes in %fs (%0.3f KiB/s)",
(long)filesize, duration_elapsed(&s.bench), (long)filesize, duration_elapsed(&s.bench),
duration_kbps(&s.bench, filesize)); duration_kbps(&s.bench, filesize));