#!/bin/sh -e ## 006_better_file_error.dpatch by David Kimdon ## ## 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 Upstream-Status: Inappropriate [debian patch] @DPATCH@ Index: binutils-2.22/bfd/opncls.c =================================================================== --- binutils-2.22.orig/bfd/opncls.c +++ binutils-2.22/bfd/opncls.c @@ -197,6 +197,13 @@ bfd_fopen (const char *filename, const c { 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)