diff options
| -rw-r--r-- | src/lib/core/wheel.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/lib/core/wheel.c b/src/lib/core/wheel.c index 91b1761..415def9 100644 --- a/src/lib/core/wheel.c +++ b/src/lib/core/wheel.c @@ -982,13 +982,14 @@ void wheel_metadata_free(struct WheelMetadata *meta) { guard_strlist_free(&meta->requires_dist); guard_strlist_free(&meta->keywords); guard_strlist_free(&meta->license_file); - - for (size_t i = 0; meta->provides_extra[i] != NULL; i++) { - guard_free(meta->provides_extra[i]->target); - guard_strlist_free(&meta->provides_extra[i]->requires_dist); - guard_free(meta->provides_extra[i]); + if (meta->provides_extra) { + for (size_t i = 0; meta->provides_extra[i] != NULL; i++) { + guard_free(meta->provides_extra[i]->target); + guard_strlist_free(&meta->provides_extra[i]->requires_dist); + guard_free(meta->provides_extra[i]); + } + guard_free(meta->provides_extra); } - guard_free(meta->provides_extra); guard_free(meta); } |
