* void Bootloader_Jump_Check(void) ATTR_INIT_SECTION(3);\r
* void Bootloader_Jump_Check(void)\r
* {\r
- * // If the bootloader key is correct, clear it and jump to the bootloader\r
- * if (Boot_Key == MAGIC_BOOT_KEY)\r
+ * // If the reset source was the bootloader and the key is correct, clear it and jump to the bootloader\r
+ * if ((MCUSR & (1<<WDRF)) && (Boot_Key == MAGIC_BOOT_KEY))\r
* {\r
* Boot_Key = 0;\r
* ((void (*)(void))BOOTLOADER_START_ADDRESS)(); \r