From: Glenn Kasten Date: Fri, 12 Oct 2012 22:59:28 +0000 (-0700) Subject: Fix log spam: Failed to open libwvm.so X-Git-Tag: android-x86-4.4-r1~662^2~67^2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=cd91d915dcaa11a4a6136c2554c3af73ea881573;p=android-x86%2Fframeworks-av.git Fix log spam: Failed to open libwvm.so Bug: 7342813 Change-Id: I98852f036e4679a653723fc2bf1435d6e9d7d34c --- diff --git a/media/libstagefright/WVMExtractor.cpp b/media/libstagefright/WVMExtractor.cpp index 31b2bcf374..5ae80cc05d 100644 --- a/media/libstagefright/WVMExtractor.cpp +++ b/media/libstagefright/WVMExtractor.cpp @@ -72,15 +72,18 @@ WVMExtractor::WVMExtractor(const sp &source) } } -bool WVMExtractor::getVendorLibHandle() +static void init_routine() { - if (gVendorLibHandle == NULL) { - gVendorLibHandle = dlopen("libwvm.so", RTLD_NOW); - } - + gVendorLibHandle = dlopen("libwvm.so", RTLD_NOW); if (gVendorLibHandle == NULL) { ALOGE("Failed to open libwvm.so"); } +} + +bool WVMExtractor::getVendorLibHandle() +{ + static pthread_once_t sOnceControl = PTHREAD_ONCE_INIT; + pthread_once(&sOnceControl, init_routine); return gVendorLibHandle != NULL; }