aboutsummaryrefslogtreecommitdiffstats
path: root/libselinux/src/label.c
diff options
context:
space:
mode:
authorJeff Vander Stoep <jeffv@google.com>2017-04-12 12:31:22 -0700
committerJeff Vander Stoep <jeffv@google.com>2017-04-12 14:45:12 -0700
commit2cc30d6029d52690bf01b2dc4a04d8af3a49261f (patch)
tree72873d62261c7dac119db23e809208a5ac375b64 /libselinux/src/label.c
parent43a9c969aa60115c5716c4120ee7d8d69d5d86a8 (diff)
parent64afa1aff1cd610d2493f780e2a44b551f668b84 (diff)
downloadandroid_external_selinux-2cc30d6029d52690bf01b2dc4a04d8af3a49261f.tar.gz
android_external_selinux-2cc30d6029d52690bf01b2dc4a04d8af3a49261f.tar.bz2
android_external_selinux-2cc30d6029d52690bf01b2dc4a04d8af3a49261f.zip
Merge remote-tracking branch 'aosp/upstream-master' into mymerge
Bug: 36508258 Test: build and boot Marlin. Change-Id: Ic5f92ad304dca23ddbfaaffd86489f3a556f9a1e
Diffstat (limited to 'libselinux/src/label.c')
-rw-r--r--libselinux/src/label.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/libselinux/src/label.c b/libselinux/src/label.c
index 951031e5..41937397 100644
--- a/libselinux/src/label.c
+++ b/libselinux/src/label.c
@@ -96,7 +96,7 @@ struct selabel_sub *selabel_subs_init(const char *path,
struct selabel_digest *digest)
{
char buf[1024];
- FILE *cfg = fopen(path, "r");
+ FILE *cfg = fopen(path, "re");
struct selabel_sub *sub = NULL;
struct stat sb;
@@ -191,9 +191,11 @@ static inline struct selabel_digest *selabel_is_digest_set
return NULL;
err:
- free(digest->digest);
- free(digest->specfile_list);
- free(digest);
+ if (digest) {
+ free(digest->digest);
+ free(digest->specfile_list);
+ free(digest);
+ }
return NULL;
}