From 09eaaa09ee705a48f02e8f800062132274d923cd Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 16 Apr 2017 19:28:25 +0200 Subject: [PATCH] bootloader: don't show recovery seed warning if no firmware is present --- bootloader/usb.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/bootloader/usb.c b/bootloader/usb.c index 987ee3e12..9d5675b14 100644 --- a/bootloader/usb.c +++ b/bootloader/usb.c @@ -322,12 +322,14 @@ static void hid_rx_callback(usbd_device *dev, uint8_t ep) if (flash_state == STATE_OPEN) { if (msg_id == 0x0006) { // FirmwareErase message (id 6) - layoutDialog(&bmp_icon_question, "Abort", "Continue", NULL, "Install new", "firmware?", NULL, "Never do this without", "your recovery card!", NULL); - do { - delay(100000); - buttonUpdate(); - } while (!button.YesUp && !button.NoUp); - if (button.YesUp) { + if (firmware_present) { + layoutDialog(&bmp_icon_question, "Abort", "Continue", NULL, "Install new", "firmware?", NULL, "Never do this without", "your recovery card!", NULL); + do { + delay(100000); + buttonUpdate(); + } while (!button.YesUp && !button.NoUp); + } + if (!firmware_present || button.YesUp) { // backup metadata memcpy(meta_backup, (void *)FLASH_META_START, FLASH_META_LEN); flash_unlock();