int nextcp = 0;
int ncp = cp;
+ boolean parsednodename=false;
while (majorsyms.searchFrom(nf, cp) && (Error == null))
{
int fcp = majorsyms.matchedFrom();
case '\'':
com.stevesoft.pat.Regex qnodename = new com.stevesoft.pat.Regex(
- "([^']|'')+'");
+ "'([^']|'')+'");
if (qnodename.searchFrom(nf, fcp))
{
int nl = qnodename.stringMatched().length();
- nodename = new String(qnodename.stringMatched().substring(0,
+ nodename = new String(qnodename.stringMatched().substring(1,
nl - 1));
- cp = fcp + nl + 1;
+ // jump to after end of quoted nodename
+ nextcp = fcp + nl + 1;
+ parsednodename=true;
}
else
{
com.stevesoft.pat.Regex ndist = new com.stevesoft.pat.Regex(
":([-0-9Ee.+]+)");
- if (uqnodename.search(fstring)
+ if (!parsednodename && uqnodename.search(fstring)
&& ((uqnodename.matchedFrom(1) == 0) || (fstring
.charAt(uqnodename.matchedFrom(1) - 1) != ':'))) // JBPNote
// HACK!
distance = DefDistance;
bootstrap = DefBootstrap;
commentString2 = null;
+ parsednodename=false;
}
if (nextcp == 0)
{