f337611edf4678e7710b5ffa139c68a3d95c6071
[openwrt/staging/chunkeey.git] / toolchain / binutils / patches / 2.16.1 / 300-006_better_file_error.patch
1 #!/bin/sh -e
2 ## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com>
3 ##
4 ## All lines beginning with `## DP:' are a description of the patch.
5 ## DP: Specify which filename is causing an error if the filename is a
6 ## DP: directory. (#45832)
7
8 if [ $# -ne 1 ]; then
9 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
10 exit 1
11 fi
12
13 [ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
14 patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
15
16 case "$1" in
17 -patch) patch $patch_opts -p1 < $0;;
18 -unpatch) patch $patch_opts -p1 -R < $0;;
19 *)
20 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
21 exit 1;;
22 esac
23
24 exit 0
25
26 @DPATCH@
27 diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c
28 --- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100
29 +++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100
30 @@ -150,6 +150,13 @@
31 {
32 bfd *nbfd;
33 const bfd_target *target_vec;
34 + struct stat s;
35 +
36 + if (stat (filename, &s) == 0)
37 + if (S_ISDIR(s.st_mode)) {
38 + bfd_set_error (bfd_error_file_not_recognized);
39 + return NULL;
40 + }
41
42 nbfd = _bfd_new_bfd ();
43 if (nbfd == NULL)