generic-poky/meta/packages/binutils/binutils-2.16/binutils-2.16-objcopy-renam...

30 lines
1.0 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.
#
#Signed-off-by: John Bowler <jbowler@acm.org>
--- binutils-2.16/binutils/objcopy.c.orig 2006-01-31 11:15:38.797318519 -0800
+++ binutils-2.16/binutils/objcopy.c 2006-01-31 11:15:40.463318516 -0800
@@ -2434,7 +2434,8 @@ strip_main (int argc, char *argv[])
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
@@ -3013,7 +3014,8 @@ copy_main (int argc, char *argv[])
{
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);