mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-25 19:56:30 +00:00
Fix ESP8266 exception when using profiling
This commit is contained in:
parent
5a3e380f4c
commit
25026b5923
@ -68,7 +68,7 @@ void AddLogDriver(const char *driver, uint8_t function, uint32_t start) {
|
|||||||
uint32_t profile_millis = millis() - start;
|
uint32_t profile_millis = millis() - start;
|
||||||
if (profile_millis > PROFILE_THRESHOLD) {
|
if (profile_millis > PROFILE_THRESHOLD) {
|
||||||
char stemp1[20];
|
char stemp1[20];
|
||||||
AddLog(LOG_LEVEL_DEBUG, PSTR("PRF: *** %s FUNC_%s (%d ms)"), driver, GetTextIndexed(stemp1, sizeof(stemp1), function, kXSnsFunctions), profile_millis);
|
AddLog(LOG_LEVEL_DEBUG, PSTR("PRF: *** x%s FUNC_%s (%d ms)"), driver, GetTextIndexed(stemp1, sizeof(stemp1), function, kXSnsFunctions), profile_millis);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif // USE_PROFILE_DRIVER
|
#endif // USE_PROFILE_DRIVER
|
||||||
@ -78,7 +78,7 @@ void AddLogFunction(const char *driver, uint8_t index, uint8_t function, uint32_
|
|||||||
uint32_t profile_millis = millis() - start;
|
uint32_t profile_millis = millis() - start;
|
||||||
if (profile_millis > PROFILE_THRESHOLD) {
|
if (profile_millis > PROFILE_THRESHOLD) {
|
||||||
char stemp1[20];
|
char stemp1[20];
|
||||||
AddLog(LOG_LEVEL_DEBUG, PSTR("PRF: *** %s_%02d FUNC_%s (%d ms)"), driver, index, GetTextIndexed(stemp1, sizeof(stemp1), function, kXSnsFunctions), profile_millis);
|
AddLog(LOG_LEVEL_DEBUG, PSTR("PRF: *** x%s_%02d FUNC_%s (%d ms)"), driver, index, GetTextIndexed(stemp1, sizeof(stemp1), function, kXSnsFunctions), profile_millis);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif // USE_PROFILE_DRIVER
|
#endif // USE_PROFILE_DRIVER
|
||||||
|
@ -1145,7 +1145,14 @@ bool XdrvCall(uint8_t Function)
|
|||||||
|
|
||||||
result = xdrv_func_ptr[x](Function);
|
result = xdrv_func_ptr[x](Function);
|
||||||
|
|
||||||
PROFILE_FUNCTION(PSTR("xdrv"), kXdrvList[x], Function, profile_function_start);
|
#ifdef USE_PROFILE_FUNCTION
|
||||||
|
#ifdef XFUNC_PTR_IN_ROM
|
||||||
|
uint32_t index = pgm_read_byte(kXdrvList + x);
|
||||||
|
#else
|
||||||
|
uint32_t index = kXdrvList[x];
|
||||||
|
#endif
|
||||||
|
PROFILE_FUNCTION("drv", index, Function, profile_function_start);
|
||||||
|
#endif // USE_PROFILE_FUNCTION
|
||||||
|
|
||||||
if (result && ((FUNC_COMMAND == Function) ||
|
if (result && ((FUNC_COMMAND == Function) ||
|
||||||
(FUNC_COMMAND_DRIVER == Function) ||
|
(FUNC_COMMAND_DRIVER == Function) ||
|
||||||
@ -1162,7 +1169,7 @@ bool XdrvCall(uint8_t Function)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
PROFILE_DRIVER(PSTR("xdrv"), Function, profile_driver_start);
|
PROFILE_DRIVER("drv", Function, profile_driver_start);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
@ -1126,7 +1126,14 @@ bool XsnsCall(uint8_t Function) {
|
|||||||
|
|
||||||
result = xsns_func_ptr[x](Function);
|
result = xsns_func_ptr[x](Function);
|
||||||
|
|
||||||
PROFILE_FUNCTION(PSTR("xsns"), kXsnsList[x], Function, profile_function_start);
|
#ifdef USE_PROFILE_FUNCTION
|
||||||
|
#ifdef XFUNC_PTR_IN_ROM
|
||||||
|
uint32_t index = pgm_read_byte(kXsnsList + x);
|
||||||
|
#else
|
||||||
|
uint32_t index = kXsnsList[x];
|
||||||
|
#endif
|
||||||
|
PROFILE_FUNCTION("sns", index, Function, profile_function_start);
|
||||||
|
#endif // USE_PROFILE_FUNCTION
|
||||||
|
|
||||||
if (result && ((FUNC_COMMAND == Function) ||
|
if (result && ((FUNC_COMMAND == Function) ||
|
||||||
(FUNC_PIN_STATE == Function) ||
|
(FUNC_PIN_STATE == Function) ||
|
||||||
@ -1137,7 +1144,7 @@ bool XsnsCall(uint8_t Function) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
PROFILE_DRIVER(PSTR("xsns"), Function, profile_driver_start);
|
PROFILE_DRIVER("sns", Function, profile_driver_start);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user