aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-02-09 00:06:05 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-02-09 00:06:05 +0000
commitf031d6100856e9f398e9f0aa5336df59440c836f (patch)
tree2ef35f99409eb08bc6cc14acd2ab436a02eb80ec
parenta15fcce79d1f5e7966c881f1469d6d358c344115 (diff)
parent2bed05f3ceac5bceb594f60328ae4173308bc0d2 (diff)
downloadselinux-android12-qpr3-s1-release.tar.gz
Change-Id: I755ee1f1a264de914a40c5a4acf784fcee7882a8
-rw-r--r--libselinux/src/label_backends_android.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libselinux/src/label_backends_android.c b/libselinux/src/label_backends_android.c
index d81faabe..121b52f5 100644
--- a/libselinux/src/label_backends_android.c
+++ b/libselinux/src/label_backends_android.c
@@ -278,6 +278,12 @@ static void closef(struct selabel_handle *rec)
struct spec *spec;
unsigned int i;
+ if (!data)
+ return;
+
+ /* make sure successive ->func_close() calls are harmless */
+ rec->data = NULL;
+
if (data->spec_arr) {
for (i = 0; i < data->nspec; i++) {
spec = &data->spec_arr[i];