diff options
author | Alan Modra <amodra@gmail.com> | 2025-04-16 08:55:04 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2025-04-16 14:37:17 +0930 |
commit | d4c57933d6f70addefca9a4159cd15bed9e3701b (patch) | |
tree | 0639ed71c1d30456817dbf26cefd7370a5e8994c | |
parent | 280160a7d036a73e1dbd012da1f77651921a25a4 (diff) | |
download | binutils-d4c57933d6f70addefca9a4159cd15bed9e3701b.zip binutils-d4c57933d6f70addefca9a4159cd15bed9e3701b.tar.gz binutils-d4c57933d6f70addefca9a4159cd15bed9e3701b.tar.bz2 |
Re: windres: buffer overflow in bin_to_res_toolbar
Commit 9e68cae4fdfb broke the check I added in commit 4846e543de95.
Add missing "return NULL".
-rw-r--r-- | binutils/resbin.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/binutils/resbin.c b/binutils/resbin.c index 1698e14..65bdb34 100644 --- a/binutils/resbin.c +++ b/binutils/resbin.c @@ -1460,7 +1460,10 @@ bin_to_res_toolbar (windres_bfd *wrbfd, const bfd_byte *data, it = (rc_toolbar_item *) res_alloc (sizeof (rc_toolbar_item)); it->id.named = 0; if (length < 4) - toosmall (_("toolbar item")); + { + toosmall (_("toolbar item")); + return NULL; + } it->id.u.id = (int) windres_get_32 (wrbfd, data, 4); it->prev = it->next = NULL; data += 4; |