diff options
Diffstat (limited to 'tools/fwpatcher/main.c')
-rw-r--r-- | tools/fwpatcher/main.c | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/tools/fwpatcher/main.c b/tools/fwpatcher/main.c index c8fa11ea95..b86d2f1d51 100644 --- a/tools/fwpatcher/main.c +++ b/tools/fwpatcher/main.c | |||
@@ -224,22 +224,25 @@ int PatchFirmware() | |||
224 | goto error; | 224 | goto error; |
225 | } | 225 | } |
226 | /* now md5sum it */ | 226 | /* now md5sum it */ |
227 | if (!FileMD5(name3, md5sum_str)) goto error; | 227 | if (!FileMD5(name3, md5sum_str)) { |
228 | MessageBox(NULL, TEXT("Error in checksumming"), | ||
229 | TEXT("Error"), MB_ICONERROR); | ||
230 | goto error; | ||
231 | } | ||
228 | for (i = 0; i < sizeof(checksums)/sizeof(char *); ++i) { | 232 | for (i = 0; i < sizeof(checksums)/sizeof(char *); ++i) { |
229 | if (strncmp(checksums[i], md5sum_str, 32) != 0) { | 233 | if (strncmp(checksums[i], md5sum_str, 32) == 0) { |
230 | MessageBox(NULL, | 234 | /* all is fine, rename the patched file to original name of the firmware */ |
231 | TEXT("Checksum doesn't match known good patched firmware.\n") | 235 | MoveFileEx(name3, fn, MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING); |
232 | TEXT("Download another firmware image, then try again."), | 236 | /* delete temp files */ |
233 | TEXT("Error"), MB_ICONERROR); | 237 | DeleteFile(name1); |
234 | goto error; | 238 | DeleteFile(name2); |
239 | return 1; | ||
235 | } | 240 | } |
236 | } | 241 | } |
237 | /* all is fine, rename the patched file to original name of the firmware */ | 242 | MessageBox(NULL, |
238 | MoveFileEx(name3, fn, MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING); | 243 | TEXT("Checksum doesn't match known good patched firmware.\n") |
239 | /* delete temp files */ | 244 | TEXT("Download another firmware image, then try again."), |
240 | DeleteFile(name1); | 245 | TEXT("Error"), MB_ICONERROR); |
241 | DeleteFile(name2); | ||
242 | return 1; | ||
243 | error: | 246 | error: |
244 | /* delete all temp files, don't care if some aren't created yet */ | 247 | /* delete all temp files, don't care if some aren't created yet */ |
245 | DeleteFile(name1); | 248 | DeleteFile(name1); |