restore: Remove incorrect invocation of free() in restored_get_value The free would cause a use-after-free when the plist is later freed, which eventually ends up in a crash. Thanks @TrungNguyen1909 for catching this.
diff --git a/src/restore.c b/src/restore.c index 591fd16..41bfb9d 100644 --- a/src/restore.c +++ b/src/restore.c
@@ -287,7 +287,7 @@ } *value = plist_copy(item); - free(item); + return RESTORE_E_SUCCESS; }