summaryrefslogtreecommitdiff
path: root/binutils
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2004-09-04 10:08:11 +0000
committerDanny Smith <dannysmith@users.sourceforge.net>2004-09-04 10:08:11 +0000
commit459fbf53ae6ab47c920c67561973d1909cb221c2 (patch)
tree3fed3207d73340d1351ece272a8cc3d1e6fc305e /binutils
parentca0a08e5f141484dfdf5325b3a707fa5af51eb90 (diff)
downloadbinutils-redhat-459fbf53ae6ab47c920c67561973d1909cb221c2.tar.gz
* dlltool.c (make_one_lib): Test if internal_name was specified
by user before using it.
Diffstat (limited to 'binutils')
-rw-r--r--binutils/ChangeLog5
-rw-r--r--binutils/dlltool.c7
2 files changed, 10 insertions, 2 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 8cfd193278..2afb2a17ce 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,8 @@
+2004-09-04 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * dlltool.c (make_one_lib): Test if internal_name was specified
+ by user before using it.
+
2004-09-02 Carlo Wood <carlo@alinoe.com>
PR binutils/351
diff --git a/binutils/dlltool.c b/binutils/dlltool.c
index 7688c8bb12..c9a6738403 100644
--- a/binutils/dlltool.c
+++ b/binutils/dlltool.c
@@ -2517,8 +2517,11 @@ make_one_lib_file (export_type *exp, int i)
why it did that, and it does not match what I see
in programs compiled with the MS tools. */
int idx = exp->hint;
- char const * internal_name =
- exp->internal_name ? exp->internal_name : xlate (exp->name);
+ /* If the user has specified an internal name, use it.
+ Ignore command line name translation options. */
+ char const * internal_name
+ = exp->internal_name != exp->name
+ ? exp->internal_name : xlate (exp->name);
si->size = strlen (internal_name) + 3;
si->data = xmalloc (si->size);