- else if ((pos > start) &&
- s[pos-1] == '%') {
- skip = 1;
- while ((pos > start+skip) && (s[pos-1-skip] == '%'))
- skip++;
- if ((pos > start+skip) &&
- (s[pos+1] == '~' || isSpace(s[pos+1]) ||
- s[pos-1-skip] == '~' || isSpace(s[pos-1-skip]))) {
- // discard '%%%%%\n'
+ else if (pos > start) {
+ if (s[pos-1] == '%') {
+ skip = 1;
+ while ((pos > start+skip) && (s[pos-1-skip] == '%'))
+ skip++;
+ if ((pos > start+skip) &&
+ (s[pos+1] == '~' || isSpace(s[pos+1]) ||
+ s[pos-1-skip] == '~' || isSpace(s[pos-1-skip]))) {
+ // discard '%%%%%\n'
+ dospace = false;
+ }
+ }
+ else if (!isAlnumASCII(s[pos+1]) || !isAlnumASCII(s[pos-1])) {