]> git.sur5r.net Git - cc65/commitdiff
Fixed a small memory leak
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Mon, 10 May 2004 21:06:53 +0000 (21:06 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Mon, 10 May 2004 21:06:53 +0000 (21:06 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3018 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/ca65/macro.c

index 06d619582c07dbb04087aaf747be1b3ec6935d8e..70bd91e48c8da56e6bb47007c1c0223ea895e220 100644 (file)
@@ -284,9 +284,15 @@ static void FreeMacExp (MacExp* E)
     /* One macro expansion less */
     --MacExpansions;
 
-    /* Free the parameter list */
+    /* Free the parameter lists */
     for (I = 0; I < E->ParamCount; ++I) {
-       xfree (E->Params [I]);
+        /* Free one parameter list */
+        TokNode* N = E->Params[I];
+        while (N) {
+            TokNode* P = N->Next;
+            FreeTokNode (N);
+            N = P;
+        }
     }
     xfree (E->Params);