Fix tg3_writer allocation: use new/delete instead of calloc/free

Co-authored-by: syoyo <18676+syoyo@users.noreply.github.com>
Agent-Logs-Url: https://github.com/syoyo/tinygltf/sessions/c2a9ce6c-1c60-4925-b67b-e5ad2ffe1cd2
This commit is contained in:
copilot-swe-agent[bot]
2026-03-20 20:39:43 +00:00
parent 0e370ef62f
commit 946c5a2d9b

View File

@@ -4309,7 +4309,7 @@ struct tg3_writer {
TINYGLTF3_API tg3_writer *tg3_writer_create(
tg3_write_chunk_fn chunk_fn, void *user_data,
const tg3_write_options *options) {
tg3_writer *w = (tg3_writer *)calloc(1, sizeof(tg3_writer));
tg3_writer *w = new (std::nothrow) tg3_writer();
if (!w) return NULL;
w->chunk_fn = chunk_fn;
w->user_data = user_data;
@@ -4385,10 +4385,7 @@ TINYGLTF3_API tg3_error_code tg3_writer_end(tg3_writer *w) {
}
TINYGLTF3_API void tg3_writer_destroy(tg3_writer *w) {
if (w) {
w->root.~tinygltf_json();
free(w);
}
delete w;
}
#endif /* TINYGLTF3_IMPLEMENTATION */