diff options
author | Bryce McKinlay <bryce@waitaki.otago.ac.nz> | 2001-08-26 10:09:59 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2001-08-26 11:09:59 +0100 |
commit | 387edc7625471683c0f26cdb3ecea436495ff4c1 (patch) | |
tree | cb09bf80a600702a9662a551edb1127054d3e992 /libjava | |
parent | 51c4678a03a515f875a1625d0b6ded86ae107edc (diff) | |
download | gcc-387edc7625471683c0f26cdb3ecea436495ff4c1.zip gcc-387edc7625471683c0f26cdb3ecea436495ff4c1.tar.gz gcc-387edc7625471683c0f26cdb3ecea436495ff4c1.tar.bz2 |
* name-finder.cc (lookup): Ignore a null dli_fname from d
From-SVN: r45181
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 4 | ||||
-rw-r--r-- | libjava/name-finder.cc | 6 |
2 files changed, 8 insertions, 2 deletions
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 <bryce@waitaki.otago.ac.nz> + + * name-finder.cc (lookup): Ignore a null dli_fname from dladdr. + 2001-08-23 Tom Tromey <tromey@redhat.com> * 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; } } |