Skip to content

Commit ace5e98

Browse files
authored
Fix eboot crash with exception 28. ets_printf() should take pointer argument. (esp8266#7666)
* Fix eboot crash with exception 28. ets_printf takes pointer argument, not 32bit literal. * add missing eboot.elf for 32b load fix * Corrected pointer use for uint32_t arrays. * removed accidental change from uitn32_t to int32_t
1 parent e920564 commit ace5e98

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

bootloaders/eboot/eboot.c

+3-3
Original file line numberDiff line numberDiff line change
@@ -235,14 +235,14 @@ int main()
235235

236236
if (cmd.action == ACTION_COPY_RAW) {
237237
uint32_t cp = S('c', 'p', ':', 0);
238-
ets_printf((const char *)cp);
238+
ets_printf((const char *)&cp);
239239

240240
ets_wdt_disable();
241241
res = copy_raw(cmd.args[0], cmd.args[1], cmd.args[2], false);
242242
ets_wdt_enable();
243243

244244
cp = S('0' + res, '\n', 0, 0 );
245-
ets_printf((const char *)cp);
245+
ets_printf((const char *)&cp);
246246
#if 0
247247
//devyte: this verify step below (cmp:) only works when the end of copy operation above does not overwrite the
248248
//beginning of the image in the empty area, see #7458. Disabling for now.
@@ -259,7 +259,7 @@ int main()
259259
}
260260

261261
cp = S('0' + res, '\n', 0, 0 );
262-
ets_printf((const char *)cp);
262+
ets_printf((const char *)&cp);
263263
#endif
264264
if (res == 0) {
265265
cmd.action = ACTION_LOAD_APP;

bootloaders/eboot/eboot.elf

-32 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)