Merge "Fix static analyzer warnings."
am: 4b547a1516
Change-Id: Id5b85ec29220cdbc15aab72ddf4dfbd2d4ef2fc7
diff --git a/tools/sepolicy-analyze/neverallow.c b/tools/sepolicy-analyze/neverallow.c
index 26ce144..25e6a0c 100644
--- a/tools/sepolicy-analyze/neverallow.c
+++ b/tools/sepolicy-analyze/neverallow.c
@@ -258,6 +258,7 @@
node->next = classperms;
classperms = node;
free(id);
+ id = NULL;
} while (p < end && openparens);
if (p == end)
@@ -325,6 +326,8 @@
if (!strcmp(id, "*")) {
for (node = classperms; node; node = node->next)
node->data = ~0;
+ free(id);
+ id = NULL;
continue;
}
@@ -341,6 +344,7 @@
node->data |= 1U << (perm->s.value - 1);
}
free(id);
+ id = NULL;
} while (p < end && openparens);
if (p == end)
@@ -361,6 +365,12 @@
*ptr = p;
return 0;
err:
+ // free classperms memory
+ for (node = classperms; node; ) {
+ class_perm_node_t *freeptr = node;
+ node = node->next;
+ free(freeptr);
+ }
return -1;
}