diff options
author | Alex Merry <dev@randomguy3.me.uk> | 2013-03-25 18:15:11 +0000 |
---|---|---|
committer | Alex Merry <dev@randomguy3.me.uk> | 2013-03-25 18:36:52 +0000 |
commit | 0f969b6ced7e9ebcbe4bc4e17867ff32d67f27bb (patch) | |
tree | 9632ffa948332d8636c15537cb19356781a215ec /tikzit/src/common/tikzparser.ym | |
parent | 1b83e14b1f5640881deeb03c1d11df5197746b64 (diff) |
Catch some memory leaks
Memory usage on Linux no longer shoots up after running the tikz parser
a handful of times.
Diffstat (limited to 'tikzit/src/common/tikzparser.ym')
-rw-r--r-- | tikzit/src/common/tikzparser.ym | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tikzit/src/common/tikzparser.ym b/tikzit/src/common/tikzparser.ym index d0ced92..794b06d 100644 --- a/tikzit/src/common/tikzparser.ym +++ b/tikzit/src/common/tikzparser.ym @@ -148,7 +148,7 @@ val: PROPSTRING { $$ = $1; } | DELIMITEDSTRING { $$ = $1; }; nodename: "(" REFSTRING ")" { $$ = $2; }; node: "\\node" optproperties nodename "at" COORD DELIMITEDSTRING ";" { - Node *node = [Node node]; + Node *node = [[Node alloc] init]; if ($2) [node setData:$2]; [node setName:$3]; @@ -156,6 +156,7 @@ node: "\\node" optproperties nodename "at" COORD DELIMITEDSTRING ";" [node setLabel:$6]; [assembler addNodeToMap:node]; [[assembler graph] addNode:node]; + [node release]; }; optanchor: { $$ = nil; } | "." REFSTRING { $$ = $2; }; @@ -178,7 +179,7 @@ optedgenode: } edge: "\\draw" optproperties noderef "to" optedgenode optnoderef ";" { - Edge *edge = [Edge edge]; + Edge *edge = [[Edge alloc] init]; if ($2) [edge setData:$2]; [edge setSource:$3.node]; @@ -193,6 +194,7 @@ edge: "\\draw" optproperties noderef "to" optedgenode optnoderef ";" } [edge setAttributesFromData]; [[assembler graph] addEdge:edge]; + [edge release]; }; ignoreprop: val | val "=" val; |