e35de7eb3a
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2669 311d38ba-8fff-0310-9ca6-ca027cbcb966
40 lines
1.4 KiB
Diff
40 lines
1.4 KiB
Diff
# 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/objcopy.c | 8 +++++---
|
|
# 1 file changed, 5 insertions(+), 3 deletions(-)
|
|
#
|
|
Index: src/binutils/objcopy.c
|
|
===================================================================
|
|
--- src.orig/binutils/objcopy.c 2007-08-09 13:26:03.000000000 +0100
|
|
+++ src/binutils/objcopy.c 2007-08-09 16:36:12.000000000 +0100
|
|
@@ -2787,8 +2787,9 @@ strip_main (int argc, char *argv[])
|
|
if (preserve_dates)
|
|
set_times (tmpname, &statbuf);
|
|
if (output_file != tmpname)
|
|
- smart_rename (tmpname, output_file ? output_file : argv[i],
|
|
- preserve_dates);
|
|
+ if (smart_rename (tmpname, output_file ? output_file : argv[i],
|
|
+ preserve_dates))
|
|
+ hold_status = 1;
|
|
status = hold_status;
|
|
}
|
|
else
|
|
@@ -3411,7 +3412,8 @@ copy_main (int argc, char *argv[])
|
|
if (preserve_dates)
|
|
set_times (tmpname, &statbuf);
|
|
if (tmpname != output_filename)
|
|
- smart_rename (tmpname, input_filename, preserve_dates);
|
|
+ if (smart_rename (tmpname, input_filename, preserve_dates))
|
|
+ status = 1;
|
|
}
|
|
else
|
|
unlink_if_ordinary (tmpname);
|