This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Check asprintf return value


git a31b8bd9a05 introduced a warning (depending on your system
headers).

	PR 24225
	* elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
	return value.

diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c
index b0f200d0f8..5d787eb2f4 100644
--- a/bfd/elf32-nios2.c
+++ b/bfd/elf32-nios2.c
@@ -3821,7 +3821,9 @@ nios2_elf32_relocate_section (bfd *output_bfd,
 
 		  format = _("global pointer relative relocation at address "
 			     "%#" PRIx64 " when _gp not defined\n");
-		  asprintf (&msgbuf, format, (uint64_t) reloc_address);
+		  if (asprintf (&msgbuf, format,
+				(uint64_t) reloc_address) == -1)
+		    msgbuf = NULL;
 		  msg = msgbuf;
 		  r = bfd_reloc_dangerous;
 		}
@@ -3851,9 +3853,10 @@ nios2_elf32_relocate_section (bfd *output_bfd,
 				 "the global pointer (at %#" PRIx64 ") "
 				 "because the offset (%" PRId64 ") is out of "
 				 "the allowed range, -32678 to 32767\n" );
-		      asprintf (&msgbuf, format, name,
-				(uint64_t) symbol_address, (uint64_t) gp,
-				(int64_t) relocation);
+		      if (asprintf (&msgbuf, format, name,
+				    (uint64_t) symbol_address, (uint64_t) gp,
+				    (int64_t) relocation) == -1)
+			msgbuf = NULL;
 		      msg = msgbuf;
 		      r = bfd_reloc_outofrange;
 		    }

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]