summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/binutils/binutils/binutils-uclibc-300-006_better_file_error.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/binutils/binutils/binutils-uclibc-300-006_better_file_error.patch')
-rw-r--r--meta/recipes-devtools/binutils/binutils/binutils-uclibc-300-006_better_file_error.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/meta/recipes-devtools/binutils/binutils/binutils-uclibc-300-006_better_file_error.patch b/meta/recipes-devtools/binutils/binutils/binutils-uclibc-300-006_better_file_error.patch
new file mode 100644
index 0000000000..47bd8ff109
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/binutils-uclibc-300-006_better_file_error.patch
@@ -0,0 +1,45 @@
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
8if [ $# -ne 1 ]; then
9 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
10 exit 1
11fi
12
13[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
14patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
15
16case "$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;;
22esac
23
24exit 0
25Upstream-Status: Inappropriate [debian patch]
26
27@DPATCH@
28Index: binutils-2.22/bfd/opncls.c
29===================================================================
30--- binutils-2.22.orig/bfd/opncls.c
31+++ binutils-2.22/bfd/opncls.c
32@@ -197,6 +197,13 @@ bfd_fopen (const char *filename, const c
33 {
34 bfd *nbfd;
35 const bfd_target *target_vec;
36+ struct stat s;
37+
38+ if (stat (filename, &s) == 0)
39+ if (S_ISDIR(s.st_mode)) {
40+ bfd_set_error (bfd_error_file_not_recognized);
41+ return NULL;
42+ }
43
44 nbfd = _bfd_new_bfd ();
45 if (nbfd == NULL)