Ver código fonte

prevent crash on no dlerror

David Rose 18 anos atrás
pai
commit
180e3f5cd1
1 arquivos alterados com 10 adições e 3 exclusões
  1. 10 3
      dtool/src/dtoolutil/load_dso.cxx

+ 10 - 3
dtool/src/dtoolutil/load_dso.cxx

@@ -116,8 +116,11 @@ void * load_dso(const DSearchPath &path, const Filename &filename)
 
 
 string
 string
 load_dso_error() {
 load_dso_error() {
-  return std::string(dlerror());
-  //return "No DSO loading yet!";
+  char *message = dlerror();
+  if (message != (char *)NULL) {
+    return std::string(message);
+  }
+  return "No error.";
 }
 }
 
 
 #else
 #else
@@ -142,7 +145,11 @@ unload_dso(void *dso_handle) {
 
 
 string
 string
 load_dso_error() {
 load_dso_error() {
-  return dlerror();
+   char *message = dlerror();
+   if (message != (char *)NULL) {
+    return std::string(message);
+  }
+  return "No error.";
 }
 }
 
 
 #endif
 #endif