From 387edc7625471683c0f26cdb3ecea436495ff4c1 Mon Sep 17 00:00:00 2001 From: Bryce McKinlay Date: Sun, 26 Aug 2001 10:09:59 +0000 Subject: * name-finder.cc (lookup): Ignore a null dli_fname from d From-SVN: r45181 --- libjava/ChangeLog | 4 ++++ libjava/name-finder.cc | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'libjava') diff --git a/libjava/ChangeLog b/libjava/ChangeLog index a058e68..03e66b5 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2001-08-26 Bryce McKinlay + + * name-finder.cc (lookup): Ignore a null dli_fname from dladdr. + 2001-08-23 Tom Tromey * java/lang/reflect/Field.java (toString): Use diff --git a/libjava/name-finder.cc b/libjava/name-finder.cc index 3baa6e3..1533e08 100644 --- a/libjava/name-finder.cc +++ b/libjava/name-finder.cc @@ -145,11 +145,13 @@ _Jv_name_finder::lookup (void *p) if (dladdr (p, &dl_info)) { - strncpy (file_name, dl_info.dli_fname, sizeof file_name); + 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); /* Don't trust dladdr() if the address is from the main program. */ - if (_Jv_argv == NULL || strcmp (file_name, _Jv_argv[0]) != 0) + if (dl_info.dli_fname != NULL + && (_Jv_argv == NULL || strcmp (file_name, _Jv_argv[0]) != 0)) return true; } } -- cgit v1.1