mirror of
https://github.com/DarkFlippers/unleashed-firmware.git
synced 2025-12-12 04:34:43 +04:00
19 lines
601 B
C
19 lines
601 B
C
|
|
#include "str_buffer.h"
|
||
|
|
|
||
|
|
const char* str_buffer_make_owned_clone(StrBuffer* buffer, const char* str) {
|
||
|
|
char* owned = strdup(str);
|
||
|
|
buffer->n_owned_strings++;
|
||
|
|
buffer->owned_strings =
|
||
|
|
realloc(buffer->owned_strings, buffer->n_owned_strings * sizeof(const char*)); // -V701
|
||
|
|
buffer->owned_strings[buffer->n_owned_strings - 1] = owned;
|
||
|
|
return owned;
|
||
|
|
}
|
||
|
|
|
||
|
|
void str_buffer_clear_all_clones(StrBuffer* buffer) {
|
||
|
|
for(size_t i = 0; i < buffer->n_owned_strings; i++) {
|
||
|
|
free(buffer->owned_strings[i]);
|
||
|
|
}
|
||
|
|
free(buffer->owned_strings);
|
||
|
|
buffer->owned_strings = NULL;
|
||
|
|
}
|