summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Woodhouse <David.Woodhouse@intel.com>2011-08-13 23:40:18 +0100
committerDavid Woodhouse <David.Woodhouse@intel.com>2011-08-13 23:41:53 +0100
commitebdb1c4315577bdbf2111dd7d1fa6694757ff31f (patch)
tree39a21ffb3413f6a253b1779605a8fa7e02a43069
parent6afce789a566e0edc726ab94fd4307a3917253cf (diff)
downloadevolution-data-server-ebdb1c4315577bdbf2111dd7d1fa6694757ff31f.tar.gz
Bug #656480 - Memory leak in camel_folder_search_search()
We don't unref sexp on failure. (cherry picked from commit 86f95492d12843611f9cbb7f8635604f4f251278)
-rw-r--r--camel/camel-search-sql-sexp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/camel/camel-search-sql-sexp.c b/camel/camel-search-sql-sexp.c
index 53bbf113d..7e28d7526 100644
--- a/camel/camel-search-sql-sexp.c
+++ b/camel/camel-search-sql-sexp.c
@@ -629,8 +629,11 @@ camel_sexp_to_sql_sexp (const gchar *sql)
e_sexp_parse (sexp);
r = e_sexp_eval (sexp);
- if (!r)
+ if (!r) {
+ e_sexp_unref (sexp);
return NULL;
+ }
+
if (r->type == ESEXP_RES_STRING) {
res = g_strdup (r->value.string);
} else