File: unsubmitted-ldso-multilib.diff

package info (click to toggle)
glibc 2.42-2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 311,572 kB
  • sloc: ansic: 1,060,594; asm: 238,093; makefile: 20,949; python: 13,508; sh: 11,823; cpp: 5,188; awk: 1,794; perl: 317; yacc: 292; pascal: 182; sed: 19
file content (24 lines) | stat: -rw-r--r-- 602 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
---
 elf/dl-load.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -1706,6 +1706,17 @@
 	      __set_errno (ENOENT);
 	      return -1;
 	    }
+#ifdef __arm__
+          else if (!VALID_FLOAT_ABI (ehdr->e_flags))
+	    {
+	      /* This is not a fatal error.  On architectures where
+		 soft-float and hard-float binaries can be run this
+		 might happen.  */
+	      __close_nocancel (fd);
+	      __set_errno (ENOENT);
+	      return -1;
+	    }
+#endif
 	  else if (ehdr->e_ident[EI_DATA] != byteorder)
 	    {
 	      if (BYTE_ORDER == BIG_ENDIAN)