Signed-off-by: Allan McRae <[email protected]>
---
 lib/libalpm/sync.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/libalpm/sync.c b/lib/libalpm/sync.c
index 3664675..e19655d 100644
--- a/lib/libalpm/sync.c
+++ b/lib/libalpm/sync.c
@@ -736,11 +736,11 @@ static int apply_deltas(alpm_handle_t *handle)
                        } else {
                                /* len = cachedir len + from len + '/' + null */
                                len = strlen(cachedir) + strlen(d->from) + 2;
-                               MALLOC(from, len, RET_ERR(handle, 
ALPM_ERR_MEMORY, 1));
+                               MALLOC(from, len, free(delta); RET_ERR(handle, 
ALPM_ERR_MEMORY, 1));
                                snprintf(from, len, "%s/%s", cachedir, d->from);
                        }
                        len = strlen(cachedir) + strlen(d->to) + 2;
-                       MALLOC(to, len, free(from); RET_ERR(handle, 
ALPM_ERR_MEMORY, 1));
+                       MALLOC(to, len, free(delta); free(from); 
RET_ERR(handle, ALPM_ERR_MEMORY, 1));
                        snprintf(to, len, "%s/%s", cachedir, d->to);
 
                        /* build the patch command */
-- 
2.2.1

Reply via email to