Здравствуйте. Есть к примеру функция f1(): char * f1(char *a) { char buf[SZ]; return f2(a, buf, SZ); } char * f2(char *a, char *buf, size_t sz) { ..... } f2() что-то делает со строкой "а", используя переданный ей из f1() буфер "buf". В данном случае f1() является thread-safe? Или надо буфер передывать из функции, которая вызывает f1() ?