mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
a202ec2caf
sizeof(time_t) was previously switched from 4 to 8, ROM functions that use
time_t or dependent types (such as "struct stat") are no longer called due as
they still treat sizeof(time_t) as 4 (see commit
24c20d18
).
However, there is a ROM callpath that was left out. If putchar is the first
stdio print related call, the call path will result in cantwrite() ->
__swsetup_r() -> __smakebuf_r() -> __swhatbuf_r() using the ROM "struct stat"
(where sizeof(time_t)==4).
Instead of removing all printf related ROM newlib functions (which will result
in increased binary size), this commit adds a workaround to setup the stdio
files before any print related calls occur.
This results in cantwrite() always returning false, thus the callpath described
above never being reached.
Closes https://github.com/espressif/esp-idf/issues/9269
17 lines
381 B
Plaintext
17 lines
381 B
Plaintext
#####################################################
|
|
# This file is auto-generated from SoC caps
|
|
# using gen_soc_caps_kconfig.py, do not edit manually
|
|
#####################################################
|
|
|
|
config ESP_ROM_HAS_CRC_LE
|
|
bool
|
|
default y
|
|
|
|
config ESP_ROM_SUPPORT_MULTIPLE_UART
|
|
bool
|
|
default y
|
|
|
|
config ESP_ROM_NEEDS_SWSETUP_WORKAROUND
|
|
bool
|
|
default y
|