Add binutils-2.18 patches for all arches but AVR32.
[openwrt.git] / toolchain / binutils / patches / 2.18 / 300-006_better_file_error.patch
diff --git a/toolchain/binutils/patches/2.18/300-006_better_file_error.patch b/toolchain/binutils/patches/2.18/300-006_better_file_error.patch
new file mode 100644 (file)
index 0000000..30dfb10
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/sh -e
+## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Specify which filename is causing an error if the filename is a
+## DP: directory. (#45832)
+
+if [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
+
+case "$1" in
+       -patch) patch $patch_opts -p1 < $0;;
+       -unpatch) patch $patch_opts -p1 -R < $0;;
+        *)
+                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+                exit 1;;
+esac
+
+exit 0
+
+@DPATCH@
+Index: binutils-2.18/bfd/opncls.c
+===================================================================
+--- binutils-2.18.orig/bfd/opncls.c    2007-06-28 09:19:34.818943168 +0200
++++ binutils-2.18/bfd/opncls.c 2007-06-28 09:19:35.993764568 +0200
+@@ -183,6 +183,13 @@
+ {
+   bfd *nbfd;
+   const bfd_target *target_vec;
++  struct stat s;
++
++  if (stat (filename, &s) == 0)
++    if (S_ISDIR(s.st_mode)) {
++      bfd_set_error (bfd_error_file_not_recognized);
++      return NULL;
++    }
+
+   nbfd = _bfd_new_bfd ();
+   if (nbfd == NULL)
This page took 0.023641 seconds and 4 git commands to generate.