summaryrefslogtreecommitdiffstats
path: root/abs/extra/policykit/entry-leak.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/policykit/entry-leak.patch')
-rw-r--r--abs/extra/policykit/entry-leak.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/abs/extra/policykit/entry-leak.patch b/abs/extra/policykit/entry-leak.patch
new file mode 100644
index 0000000..f6b3295
--- /dev/null
+++ b/abs/extra/policykit/entry-leak.patch
@@ -0,0 +1,37 @@
+diff -up PolicyKit-0.9/src/polkit/polkit-policy-file-entry.c.entry-leak PolicyKit-0.9/src/polkit/polkit-policy-file-entry.c
+--- PolicyKit-0.9/src/polkit/polkit-policy-file-entry.c.entry-leak 2008-08-29 21:47:22.000000000 -0400
++++ PolicyKit-0.9/src/polkit/polkit-policy-file-entry.c 2008-08-29 21:50:13.000000000 -0400
+@@ -95,9 +95,11 @@ _polkit_policy_file_entry_new (const c
+ char *contents;
+ size_t contents_size;
+ PolKitPolicyFileEntry *pfe;
++ char **tokens;
+
+ path = NULL;
+ contents = NULL;
++ tokens = NULL;
+
+ kit_return_val_if_fail (action_id != NULL && polkit_action_validate_id (action_id), NULL);
+
+@@ -153,7 +155,6 @@ _polkit_policy_file_entry_new (const c
+ }
+
+ if (contents != NULL) {
+- char **tokens;
+ size_t num_tokens;
+ PolKitResult any;
+ PolKitResult inactive;
+@@ -183,11 +184,13 @@ _polkit_policy_file_entry_new (const c
+
+ kit_free (path);
+ kit_free (contents);
++ kit_strfreev (tokens);
+
+ return pfe;
+ error:
+ kit_free (path);
+ kit_free (contents);
++ kit_strfreev (tokens);
+ if (pfe != NULL)
+ polkit_policy_file_entry_unref (pfe);
+ return NULL;