diff --git a/source/blender/blenlib/intern/dynlib.c b/source/blender/blenlib/intern/dynlib.c index e7fa3332f43..858aa6e60bf 100644 --- a/source/blender/blenlib/intern/dynlib.c +++ b/source/blender/blenlib/intern/dynlib.c @@ -78,10 +78,7 @@ char *PIL_dynlib_get_error_as_string(PILdynlib* lib) { /* if lib is NULL reset the last error code */ err= GetLastError(); - if (!lib) { - SetLastError(ERROR_SUCCESS); - err = ERROR_SUCCESS; - } + if (!lib) SetLastError(ERROR_SUCCESS); if (err) { static char buf[1024]; @@ -96,7 +93,7 @@ char *PIL_dynlib_get_error_as_string(PILdynlib* lib) { return buf; } - return "unrecognized error"; + return err; } void PIL_dynlib_close(PILdynlib *lib) { diff --git a/source/blender/imbuf/intern/dynlibtiff.c b/source/blender/imbuf/intern/dynlibtiff.c index b057e3f8bd2..b9186e482c5 100644 --- a/source/blender/imbuf/intern/dynlibtiff.c +++ b/source/blender/imbuf/intern/dynlibtiff.c @@ -106,8 +106,11 @@ void *libtiff_findsymbol(char *name) assert(libtiff != NULL); symbol = PIL_dynlib_find_symbol(libtiff, name); if (symbol == NULL) { - printf("libtiff_findsymbol: error %s\n", - PIL_dynlib_get_error_as_string(libtiff)); + char *err = PIL_dynlib_get_error_as_string(libtiff); + + if (err) printf("libtiff_findsymbol: error %s\n",err); + else printf("libtiff_findsymbol: error Unknown.\n"); + libtiff = NULL; G.have_libtiff = (0); return NULL; diff --git a/source/blender/yafray/intern/export_Plugin.cpp b/source/blender/yafray/intern/export_Plugin.cpp index 92ec7ba8d82..db9fb7ccc72 100644 --- a/source/blender/yafray/intern/export_Plugin.cpp +++ b/source/blender/yafray/intern/export_Plugin.cpp @@ -171,7 +171,9 @@ bool yafrayPluginRender_t::initExport() corehandle = PIL_dynlib_open((char *)(location + "\\yafraycore.dll").c_str()); if (corehandle==NULL) { - cerr << "Error loading yafray plugin: " << PIL_dynlib_get_error_as_string(corehandle) << endl; + char *err = PIL_dynlib_get_error_as_string(corehandle); + if (err) cerr << "Error loading yafray plugin: " << err << endl; + else cerr << "Error loading yafray plugin: Unknown." << endl; return false; } location += "\\yafrayplugin.dll";