summaryrefslogtreecommitdiff
path: root/packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch
diff options
context:
space:
mode:
authorThomas Kunze <thommycheck@gmx.de>2008-03-27 22:52:19 +0000
committerThomas Kunze <thommycheck@gmx.de>2008-03-27 22:52:19 +0000
commitc387c55213338679b3dee7c4e6c97f01b4806c6a (patch)
tree8c0f5568e78c373f9000251cd9fcaa7f6e418048 /packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch
parente6dc7f865766178bd2aa9514eac2431d1cc0187a (diff)
parent6e80b7ada5b0175f0a97a7b3787ce059e8960bbe (diff)
merge of '42f9a5d8cedd5c5de2a24d72c0f84b019e7a5246'
and 'c474f6f48b0333b791017b2d12c15831e6d2b873'
Diffstat (limited to 'packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch')
-rw-r--r--packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch b/packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch
new file mode 100644
index 0000000000..4461bedd4e
--- /dev/null
+++ b/packages/binutils/binutils-2.16.1/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch
@@ -0,0 +1,31 @@
+# strip (and objcopy) fail to set the error code if there is no
+# output file name and the rename of the stripped (or copied) file
+# fails, yet the command fails to do anything. This fixes both
+# objcopy and strip.
+#
+# modification by bero: Ported to 2.16.91.0.6
+#
+#Signed-off-by: John Bowler <jbowler@acm.org>
+#Signed-off-by: Bernhard Rosenkraenzer <bero@arklinux.org>
+--- binutils-2.16.91.0.6/binutils/objcopy.c.ark 2006-03-11 15:59:07.000000000 +0100
++++ binutils-2.16.91.0.6/binutils/objcopy.c 2006-03-11 15:59:45.000000000 +0100
+@@ -2593,7 +2593,8 @@
+ if (preserve_dates)
+ set_times (tmpname, &statbuf);
+ if (output_file == NULL)
+- smart_rename (tmpname, argv[i], preserve_dates);
++ if(smart_rename (tmpname, argv[i], preserve_dates))
++ hold_status = 1;
+ status = hold_status;
+ }
+ else
+@@ -3184,7 +3185,8 @@
+ {
+ if (preserve_dates)
+ set_times (tmpname, &statbuf);
+- smart_rename (tmpname, input_filename, preserve_dates);
++ if (smart_rename (tmpname, input_filename, preserve_dates))
++ status = 1;
+ }
+ else
+ unlink (tmpname);