From e7b288824589b2828d83e1d47f6f12b0bd0fb353 Mon Sep 17 00:00:00 2001 From: Maxim Siniavine Date: Thu, 13 Feb 2014 15:48:53 -0800 Subject: Fix a crash when going into recovery mode. When going into recovery mode withoug recovery command file present, uncrypt crashes and the device gets stuck and eventually shuts down. Check that the command file is present before trying to read from it. Change-Id: If0192d597032be0067738e437188d92993ce56f7 --- uncrypt/uncrypt.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'uncrypt') diff --git a/uncrypt/uncrypt.c b/uncrypt/uncrypt.c index 1f0f59d..7c2d994 100644 --- a/uncrypt/uncrypt.c +++ b/uncrypt/uncrypt.c @@ -149,9 +149,14 @@ char* parse_recovery_command_file() int count = 0; char temp[1024]; - FILE* fo = fopen(RECOVERY_COMMAND_FILE_TMP, "w"); + FILE* f = fopen(RECOVERY_COMMAND_FILE, "r"); + if (f == NULL) { + return NULL; + } + FILE* fo = fopen(RECOVERY_COMMAND_FILE_TMP, "w"); + while (fgets(temp, sizeof(temp), f)) { printf("read: %s", temp); if (strncmp(temp, "--update_package=", strlen("--update_package=")) == 0) { -- cgit v1.1