| 56 | static _Thread_local char g_export_error[CBM_SZ_512]; |
| 57 | |
| 58 | static const char *itoa_buf(int v) { |
| 59 | static _Thread_local char bufs[ART_RING][CBM_SZ_32]; |
| 60 | static _Thread_local int idx = 0; |
| 61 | int i = idx; |
| 62 | idx = (idx + ART_NUL) & ART_RING_MASK; |
| 63 | snprintf(bufs[i], sizeof(bufs[i]), "%d", v); |
| 64 | return bufs[i]; |
| 65 | } |
| 66 | |
| 67 | const char *cbm_artifact_export_last_error(void) { |
| 68 | return g_export_error[0] ? g_export_error : NULL; |
no outgoing calls
no test coverage detected