]> Cypherpunks repositories - gostls13.git/commitdiff
runtime/cgo: CFRelease result from CFBundleCopyResourceURL
authorElias Naur <elias.naur@gmail.com>
Mon, 27 Mar 2017 09:14:53 +0000 (11:14 +0200)
committerElias Naur <elias.naur@gmail.com>
Mon, 27 Mar 2017 18:12:17 +0000 (18:12 +0000)
The result from CFBundleCopyResourceURL is owned by the caller. This
CL adds the necessary CFRelease to release it after use.

Fixes #19722

Change-Id: I7afe22ef241d21922a7f5cef6498017e6269a5c3
Reviewed-on: https://go-review.googlesource.com/38639
Run-TryBot: Elias Naur <elias.naur@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
src/runtime/cgo/gcc_darwin_arm.c
src/runtime/cgo/gcc_darwin_arm64.c

index 3e1574f66d7be064bf5e3f4af70d555a898ed6a5..bcdddd10160584e173aabcd62ac0a9f8a1903e22 100644 (file)
@@ -108,7 +108,9 @@ init_working_dir()
        }
        CFStringRef url_str_ref = CFURLGetString(url_ref);
        char buf[MAXPATHLEN];
-       if (!CFStringGetCString(url_str_ref, buf, sizeof(buf), kCFStringEncodingUTF8)) {
+       Boolean res = CFStringGetCString(url_str_ref, buf, sizeof(buf), kCFStringEncodingUTF8);
+       CFRelease(url_ref);
+       if (!res) {
                fprintf(stderr, "runtime/cgo: cannot get URL string\n");
                return;
        }
index 05b0121d0f502fe5021ab3ac396d8b2d625c27b6..0a69c5d64602af0a6bb5d04b9337bc7f0f4046fa 100644 (file)
@@ -110,7 +110,9 @@ init_working_dir()
        }
        CFStringRef url_str_ref = CFURLGetString(url_ref);
        char buf[MAXPATHLEN];
-       if (!CFStringGetCString(url_str_ref, buf, sizeof(buf), kCFStringEncodingUTF8)) {
+       Boolean res = CFStringGetCString(url_str_ref, buf, sizeof(buf), kCFStringEncodingUTF8);
+       CFRelease(url_ref);
+       if (!res) {
                fprintf(stderr, "runtime/cgo: cannot get URL string\n");
                return;
        }