diff options
author | Kai Tietz <kai.tietz@onevision.com> | 2012-02-19 21:18:08 +0000 |
---|---|---|
committer | Kai Tietz <kai.tietz@onevision.com> | 2012-02-19 21:18:08 +0000 |
commit | 6e230cc21758810c07dae89243af1b3f0b718582 (patch) | |
tree | 2d702a0035a2be589ac377c3a052ddcd8514dccd /ld/deffilep.y | |
parent | 6bec5e0a45fae5a59504bae5eb6498c835e1db9d (diff) | |
download | binutils-6e230cc21758810c07dae89243af1b3f0b718582.tar.gz binutils-6e230cc21758810c07dae89243af1b3f0b718582.tar.bz2 binutils-6e230cc21758810c07dae89243af1b3f0b718582.zip |
* deffilep.y (cmp_import_elem): Sort first by module name.
* pe-dll.c (process_def_file_and_drectve): Free strings
from removed export-element.
(add_bfd_to_link): Optimize loop on import-elements and lower
allocated memory.
(pe_implied_import_dll): Pass NULL instead of 0 for pointer
argument.
Diffstat (limited to 'ld/deffilep.y')
-rw-r--r-- | ld/deffilep.y | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ld/deffilep.y b/ld/deffilep.y index f66ca2d37f3..efeff19678e 100644 --- a/ld/deffilep.y +++ b/ld/deffilep.y @@ -741,13 +741,15 @@ cmp_import_elem (const def_file_import *e, const char *ex_name, { int r; + if ((r = are_names_equal (module, (e->module ? e->module->name : NULL)))) + return r; if ((r = are_names_equal (ex_name, e->name)) != 0) return r; if ((r = are_names_equal (in_name, e->internal_name)) != 0) return r; if (ord != e->ordinal) return (ord < e->ordinal ? -1 : 1); - return are_names_equal (module, (e->module ? e->module->name : NULL)); + return 0; } /* Search the position of the identical element, or returns the position |