Fix potential infinite for-loop
This commit is contained in:
parent
6724ef1657
commit
4fe9e71206
1 changed files with 3 additions and 3 deletions
6
ggml.c
6
ggml.c
|
@ -18968,7 +18968,7 @@ void gguf_free(struct gguf_context * ctx) {
|
|||
|
||||
if (ctx->kv) {
|
||||
// free string memory - not great..
|
||||
for (uint32_t i = 0; i < ctx->header.n_kv; ++i) {
|
||||
for (uint64_t i = 0; i < ctx->header.n_kv; ++i) {
|
||||
struct gguf_kv * kv = &ctx->kv[i];
|
||||
|
||||
if (kv->key.data) {
|
||||
|
@ -18984,7 +18984,7 @@ void gguf_free(struct gguf_context * ctx) {
|
|||
if (kv->type == GGUF_TYPE_ARRAY) {
|
||||
if (kv->value.arr.data) {
|
||||
if (kv->value.arr.type == GGUF_TYPE_STRING) {
|
||||
for (uint32_t j = 0; j < kv->value.arr.n; ++j) {
|
||||
for (uint64_t j = 0; j < kv->value.arr.n; ++j) {
|
||||
struct gguf_str * str = &((struct gguf_str *) kv->value.arr.data)[j];
|
||||
if (str->data) {
|
||||
free(str->data);
|
||||
|
@ -19000,7 +19000,7 @@ void gguf_free(struct gguf_context * ctx) {
|
|||
}
|
||||
|
||||
if (ctx->infos) {
|
||||
for (uint32_t i = 0; i < ctx->header.n_tensors; ++i) {
|
||||
for (uint64_t i = 0; i < ctx->header.n_tensors; ++i) {
|
||||
struct gguf_tensor_info * info = &ctx->infos[i];
|
||||
|
||||
if (info->name.data) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue