[FFmpeg-cvslog] avdevice/decklink: Fix segfault when running -list_devices on OSX

Devin Heitmueller git at videolan.org
Wed Oct 4 23:49:52 EEST 2017


ffmpeg | branch: master | Devin Heitmueller <dheitmueller at ltnglobal.com> | Tue Sep 26 12:06:20 2017 -0400| [b6782a192e18161f33fc5e943b6f33dcb97e7287] | committer: Marton Balint

avdevice/decklink: Fix segfault when running -list_devices on OSX

The string is allocated with CFStringGetCString but was being
deallocated with free(), which would intermittently result in
a segmentation fault.  Use the correct function for freeing the
allocated CFString.

Signed-off-by: Devin Heitmueller <dheitmueller at ltnglobal.com>
Signed-off-by: Marton Balint <cus at passwd.hu>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b6782a192e18161f33fc5e943b6f33dcb97e7287
---

 libavdevice/decklink_common.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavdevice/decklink_common.cpp b/libavdevice/decklink_common.cpp
index ff2df95909..c782171f2c 100644
--- a/libavdevice/decklink_common.cpp
+++ b/libavdevice/decklink_common.cpp
@@ -84,7 +84,7 @@ static char *dup_cfstring_to_utf8(CFStringRef w)
 }
 #define DECKLINK_STR    const __CFString *
 #define DECKLINK_STRDUP dup_cfstring_to_utf8
-#define DECKLINK_FREE(s) free((void *) s)
+#define DECKLINK_FREE(s) CFRelease(s)
 #define DECKLINK_BOOL bool
 #else
 #define DECKLINK_STR    const char *



More information about the ffmpeg-cvslog mailing list