summaryrefslogtreecommitdiff
path: root/src/selection.c
diff options
context:
space:
mode:
authorIngo Weinhold <ingo_weinhold@gmx.de>2013-04-18 16:22:57 +0200
committerIngo Weinhold <ingo_weinhold@gmx.de>2013-04-18 18:12:07 +0200
commit1f227f203660c4b216d04f88a23ca2c8c5739281 (patch)
tree837ef6ce42a04820c78e7ecf559e852f75af7b53 /src/selection.c
parent6881184db997deb4d5bc0ff9f5c1402bf359391e (diff)
downloadlibsolv-1f227f203660c4b216d04f88a23ca2c8c5739281.tar.gz
libsolv-1f227f203660c4b216d04f88a23ca2c8c5739281.tar.bz2
libsolv-1f227f203660c4b216d04f88a23ca2c8c5739281.zip
selection_filter(): Don't leak Queue q1 and Map m2
Diffstat (limited to 'src/selection.c')
-rw-r--r--src/selection.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/selection.c b/src/selection.c
index 8ec633f..d179b57 100644
--- a/src/selection.c
+++ b/src/selection.c
@@ -803,7 +803,11 @@ selection_filter(Pool *pool, Queue *sel1, Queue *sel2)
{
Id select = sel2->elements[i] & SOLVER_SELECTMASK;
if (select == SOLVER_SOLVABLE_ALL)
- return;
+ {
+ queue_free(&q1);
+ map_free(&m2);
+ return;
+ }
if (select == SOLVER_SOLVABLE_REPO)
{
Solvable *s;
@@ -878,6 +882,8 @@ selection_filter(Pool *pool, Queue *sel1, Queue *sel2)
j += 2;
}
queue_truncate(sel1, j);
+ queue_free(&q1);
+ map_free(&m2);
}
void