OSDN Git Service

* name-finder.cc (_Jv_name_finder::lookup): Check for NULL dli_sname.
[pf3gnuchains/gcc-fork.git] / libjava / name-finder.cc
index 1533e08..36726bd 100644 (file)
@@ -147,10 +147,12 @@ _Jv_name_finder::lookup (void *p)
       {
         if (dl_info.dli_fname)
          strncpy (file_name, dl_info.dli_fname, sizeof file_name);
-       strncpy (method_name, dl_info.dli_sname, sizeof method_name);
+       if (dl_info.dli_sname)
+         strncpy (method_name, dl_info.dli_sname, sizeof method_name);
        
        /* Don't trust dladdr() if the address is from the main program. */
        if (dl_info.dli_fname != NULL
+           && dl_info.dli_sname != NULL
           && (_Jv_argv == NULL || strcmp (file_name, _Jv_argv[0]) != 0))
          return true;
       }