dlltool invalid free

Alan Modra amodra@gmail.com
Tue Jun 10 21:55:31 GMT 2025


This is a followup to commt 619f863c55ca "dlltool memory leaks".
The name passed to def_name is freed, so if missing we can't just
use "".  strdup it.

	* defparse.y (opt_name): xstrdup empty string.

diff --git a/binutils/defparse.y b/binutils/defparse.y
index d50739eb801..a2c4c4b6196 100644
--- a/binutils/defparse.y
+++ b/binutils/defparse.y
@@ -213,7 +213,7 @@ opt_name2: ID { $$ = $1; }
 	  }
 	;
 opt_name: opt_name2 { $$ =$1; }
-	|		{ $$=""; }
+	|		{ $$ = xstrdup (""); }
 	;
 
 opt_ordinal:

-- 
Alan Modra


More information about the Binutils mailing list