SF.net SVN: geany:[5564] trunk/tagmanager/c.c

colombanw at users.sourceforge.net colombanw at xxxxx
Sat Mar 5 22:54:33 UTC 2011


Revision: 5564
          http://geany.svn.sourceforge.net/geany/?rev=5564&view=rev
Author:   colombanw
Date:     2011-03-05 22:54:33 +0000 (Sat, 05 Mar 2011)

Log Message:
-----------
Plug a memory leak in the C tag parser

Modified Paths:
--------------
    trunk/tagmanager/c.c

Modified: trunk/tagmanager/c.c
===================================================================
--- trunk/tagmanager/c.c	2011-03-05 22:53:58 UTC (rev 5563)
+++ trunk/tagmanager/c.c	2011-03-05 22:54:33 UTC (rev 5564)
@@ -2891,6 +2891,7 @@
 			else if (isContextualStatement (st))
 			{
 				tokenInfo *name_token = (tokenInfo *)prev;
+				boolean free_name_token = FALSE;
 
 				if (isType (name_token, TOKEN_NAME))
 				{
@@ -2927,6 +2928,7 @@
 						char buffer[64];
 
 						name_token = newToken ();
+						free_name_token = TRUE;
 						copyToken (name_token, contextual_token);
 
 						sprintf(buffer, "anon_%s_%d", name_token->name->buffer, contextual_fake_count++);
@@ -2945,6 +2947,8 @@
 					}
 				}
 				qualifyBlockTag (st, name_token);
+				if (free_name_token)
+					deleteToken (name_token);
 			}
 			break;
 		}


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the Commits mailing list