commit 9c6e101af4e6750c4464b294980d7852903c8817 from: Stefan Sperling date: Mon Jul 23 16:06:20 2018 UTC fix leaks in print_commits() commit - cd31e9115f6721c23df6212f4a8f3fda3133d189 commit + 9c6e101af4e6750c4464b294980d7852903c8817 blob - 7c0bf3a9347605e6349077b56dcef8d15aff3c95 blob + 390d7ee427b4f78fa7d898cd9ae743efaac3777d --- got/got.c +++ got/got.c @@ -447,10 +447,23 @@ print_commits(struct got_object *root_obj, struct got_ err = NULL; changed = 1; } else { - changed = (got_object_id_cmp( - got_object_get_id(obj), - got_object_get_id(pobj)) != 0); + struct got_object_id *id, *pid; + id = got_object_get_id(obj); + if (id == NULL) { + err = got_error_from_errno(); + break; + } + pid = got_object_get_id(pobj); + if (pid == NULL) { + free(id); + err = got_error_from_errno(); + break; + } + changed = + (got_object_id_cmp(id, pid) != 0); got_object_close(pobj); + free(id); + free(pid); } } got_object_close(obj);