|
From: <set...@us...> - 2009-05-23 17:17:31
|
Revision: 1792
http://frontierkernel.svn.sourceforge.net/frontierkernel/?rev=1792&view=rev
Author: sethdill
Date: 2009-05-23 17:17:25 +0000 (Sat, 23 May 2009)
Log Message:
-----------
Fixed a bug in the string compiler. Was not properly handling escaped double quotes in macro parameters.
Modified Paths:
--------------
Frontier/branches/Conversant/Common/source/conversantverbs.c
Modified: Frontier/branches/Conversant/Common/source/conversantverbs.c
===================================================================
--- Frontier/branches/Conversant/Common/source/conversantverbs.c 2008-09-21 20:52:50 UTC (rev 1791)
+++ Frontier/branches/Conversant/Common/source/conversantverbs.c 2009-05-23 17:17:25 UTC (rev 1792)
@@ -403,8 +403,22 @@
}
else if ( s[ ix ] == '\\' )
{
- if ( ( s[ ix + 1 ] == '\\' ) || ( s[ ix + 1 ] == '"' ) ) /* skip the next char */
- ix++;
+ // <!--#abc def="<a href=\"ghi\">jkl</a>"-->
+ if ( ix < ct - 1 )
+ {
+ if ( !conv_addtextrange( (*adrdest).ht, src, ixstart, ix ) )
+ break;
+
+ // next range starts with char after the backslash
+ ixstart = ++ix;
+
+ // don't look at that next char, though, we don't care what it is
+ ++ix;
+
+ continue;
+ }
+// if ( ( s[ ix + 1 ] == '\\' ) || ( s[ ix + 1 ] == '"' ) ) /* skip the next char */
+// ix++;
}
else if ( s[ ix ] == '<' ) /* macro delim? */
{
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|