diff options
author | clifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c> | 2009-11-08 19:14:03 (GMT) |
---|---|---|
committer | clifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c> | 2009-11-08 19:14:03 (GMT) |
commit | 8394d6002b3b34b2e5c6d118c167f573edf3568d (patch) | |
tree | 120173638c2b155f65b9124dde8949d4af31d10c /parser.y | |
parent | ac26c9d683edd89c54af1990760fd2159277791d (diff) |
Clifford Wolf:
Added commandline_commands support
git-svn-id: http://svn.clifford.at/openscad/trunk@132 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'parser.y')
-rw-r--r-- | parser.y | 16 |
1 files changed, 13 insertions, 3 deletions
@@ -112,9 +112,19 @@ statement: } } | TOK_ID '=' expr ';' { - module->assignments_var.append($1); - module->assignments_expr.append($3); - free($1); + bool add_new_assignment = true; + for (int i = 0; i < module->assignments_var.size(); i++) { + if (module->assignments_var[i] != QString($1)) + continue; + delete module->assignments_expr[i]; + module->assignments_expr[i] = $3; + add_new_assignment = false; + } + if (add_new_assignment) { + module->assignments_var.append($1); + module->assignments_expr.append($3); + free($1); + } } | TOK_MODULE TOK_ID '(' arguments_decl optional_commas ')' { Module *p = module; |