summaryrefslogtreecommitdiff
path: root/src/commit2.c
diff options
context:
space:
mode:
authorslioch <slioch@eng-140.vyatta.com>2009-03-04 17:15:29 -0800
committerslioch <slioch@eng-140.vyatta.com>2009-03-04 17:15:29 -0800
commit079dc15e8e34568ef41a3938276c235d4f75ee09 (patch)
tree7cba578e83eb1e2c9f98768cffca79bdb6eff993 /src/commit2.c
parent86b9133c53ab2082fa2c58f68a1779c39c113521 (diff)
downloadvyatta-cfg-079dc15e8e34568ef41a3938276c235d4f75ee09.tar.gz
vyatta-cfg-079dc15e8e34568ef41a3938276c235d4f75ee09.zip
limit unescape command to embedded multinodes--fixes problem in qos-walkthrough regression test. haven't tried it but system probably inherently prevents percents from
being used in embedded multinodes.
Diffstat (limited to 'src/commit2.c')
-rw-r--r--src/commit2.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/commit2.c b/src/commit2.c
index 35f609d..0d77fb6 100644
--- a/src/commit2.c
+++ b/src/commit2.c
@@ -309,10 +309,14 @@ process_func(GNode *node, gpointer data)
//look at parent for multi tag
if (d->_value && d->_name) {
+ char *val = d->_name;
+ if (c->_def.tag) { //need to handle the embedded multinode as a special case--should be fixed!
+ val = (char*)clind_unescape(d->_name);
+ }
if (g_debug) {
- printf("commit2::process_func(): @ value: %s\n",(char*)clind_unescape(d->_name));
+ printf("commit2::process_func(): @ value: %s\n",(char*)val);
}
- set_at_string((char*)clind_unescape(d->_name)); //embedded multinode value
+ set_at_string(val); //embedded multinode value
}
else {
if (g_debug) {