Fix double free when `getcwd` does not allocate buffer

Do not free the result at normal return from `ruby_getcwd`.
This commit is contained in:
Nobuyoshi Nakada 2024-07-17 15:16:21 +09:00
Родитель 05502c1dda
Коммит 03a0ade90d
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 3582D74E1FEE4465
1 изменённых файлов: 1 добавлений и 1 удалений

2
util.c
Просмотреть файл

@ -564,7 +564,7 @@ ruby_getcwd(void)
rb_imemo_tmpbuf_set_ptr(guard, buf);
buf = xrealloc(buf, size);
}
rb_free_tmp_buffer(&guard);
rb_imemo_tmpbuf_set_ptr(guard, NULL);
return buf;
}