diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2013-04-26 14:02:46 +0800 |
---|---|---|
committer | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2013-08-27 11:16:44 +0200 |
commit | a211625cc6b4478988db5f81a26254d544f5e545 (patch) | |
tree | eeaa5370a4d8be5361ad6259849b906630901684 | |
parent | a68b919e7c3e8449a5d3b91689f34c04fb39940c (diff) | |
download | libva-a211625cc6b4478988db5f81a26254d544f5e545.tar.gz |
Check the returned handle
This is to fix klockwork critical issue.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
-rw-r--r-- | va/glx/va_glx_impl.c | 4 | ||||
-rw-r--r-- | va/x11/va_fglrx.c | 10 |
2 files changed, 7 insertions, 7 deletions
diff --git a/va/glx/va_glx_impl.c b/va/glx/va_glx_impl.c index 5299589..4e3f629 100644 --- a/va/glx/va_glx_impl.c +++ b/va/glx/va_glx_impl.c @@ -151,12 +151,12 @@ static GLXGetProcAddressProc get_proc_address_func(void) dlerror(); get_proc_func = (GLXGetProcAddressProc) dlsym(RTLD_DEFAULT, "glXGetProcAddress"); - if (!dlerror()) + if (!dlerror() && get_proc_func) return get_proc_func; get_proc_func = (GLXGetProcAddressProc) dlsym(RTLD_DEFAULT, "glXGetProcAddressARB"); - if (!dlerror()) + if (!dlerror() && get_proc_func) return get_proc_func; return get_proc_address_default; diff --git a/va/x11/va_fglrx.c b/va/x11/va_fglrx.c index 77149cb..a437bce 100644 --- a/va/x11/va_fglrx.c +++ b/va/x11/va_fglrx.c @@ -153,27 +153,27 @@ Bool VA_FGLRXGetClientDriverName( Display *dpy, int screen, dlerror(); ADL_Main_Control_Create = (ADL_MAIN_CONTROL_CREATE) dlsym(libadl_handle,"ADL_Main_Control_Create"); - if (dlerror()) + if (dlerror() || !ADL_Main_Control_Create) goto end; ADL_Main_Control_Destroy = (ADL_MAIN_CONTROL_DESTROY) dlsym(libadl_handle,"ADL_Main_Control_Destroy"); - if (dlerror()) + if (dlerror() || !ADL_Main_Control_Destroy) goto end; ADL_Adapter_NumberOfAdapters_Get = (ADL_ADAPTER_NUMBEROFADAPTERS_GET) dlsym(libadl_handle,"ADL_Adapter_NumberOfAdapters_Get"); - if (dlerror()) + if (dlerror() || !ADL_Adapter_NumberOfAdapters_Get) goto end; ADL_Adapter_AdapterInfo_Get = (ADL_ADAPTER_ADAPTERINFO_GET) dlsym(libadl_handle,"ADL_Adapter_AdapterInfo_Get"); - if (dlerror()) + if (dlerror() || !ADL_Adapter_AdapterInfo_Get) goto end; ADL_Adapter_XScreenInfo_Get = (ADL_ADAPTER_XSCREENINFO_GET) dlsym(libadl_handle,"ADL_Adapter_XScreenInfo_Get"); - if (dlerror()) + if (dlerror() || !ADL_Adapter_XScreenInfo_Get) goto end; if (ADL_Main_Control_Create(ADL_Main_Memory_Alloc, 1) != ADL_OK) |