Module: sems
Branch: master
Commit: d05da0426f1302d91b03d20fc976a1edd710e2dd
URL: 
https://github.com/sems-server/sems/commit/d05da0426f1302d91b03d20fc976a1edd710e2dd

Author: Stefan Sayer <stefan.sa...@googlemail.com>
Committer: Stefan Sayer <stefan.sa...@googlemail.com>
Date: 2015-06-09T00:27:41+02:00

dsm:syntax - allow @@,## and $$ for @, # and $$ in sets() action

---

Modified: apps/dsm/DSMCoreModule.cpp
Modified: doc/dsm/dsm_syntax.txt

---

Diff:  
https://github.com/sems-server/sems/commit/d05da0426f1302d91b03d20fc976a1edd710e2dd.diff
Patch: 
https://github.com/sems-server/sems/commit/d05da0426f1302d91b03d20fc976a1edd710e2dd.patch

---

diff --git a/apps/dsm/DSMCoreModule.cpp b/apps/dsm/DSMCoreModule.cpp
index e41fdf1..c96528d 100644
--- a/apps/dsm/DSMCoreModule.cpp
+++ b/apps/dsm/DSMCoreModule.cpp
@@ -722,6 +722,10 @@ string replaceParams(const string& q, AmSession* sess, 
DSMSession* sc_sess,
     repl_pos = rstart+1;
     if (rstart == string::npos) 
       break;
+    if (rstart && (res.length() > rstart) && (res[rstart]==res[repl_pos])) {
+      res.erase(rstart, 1);
+      continue;
+    }
     if (rstart && res[rstart-1] == '\\') // escaped
       continue;
     size_t rend;
diff --git a/doc/dsm/dsm_syntax.txt b/doc/dsm/dsm_syntax.txt
index 8b0411e..1546af2 100644
--- a/doc/dsm/dsm_syntax.txt
+++ b/doc/dsm/dsm_syntax.txt
@@ -89,6 +89,9 @@ DSM flow
   e.g.  set($var="text"); set($var=$var2); set($var=#key)
  sets($var=value)
   e.g.  sets($var="text and some $variable and some #param");
+        sets($var="$(variable1)$(variable2)");
+        sets($var="this is a single hash: ##")
+        sets($var="a single at on a date with a single dollar: @@$$")
  var($dstvar=srcvarname)
   e.g.  var($dstvar=$var_counter)
  param($dstvar=srcparamname)

_______________________________________________
Semsdev mailing list
Semsdev@lists.iptel.org
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to