diff --git a/lib/modules/Parser.pmod/Pike.pmod b/lib/modules/Parser.pmod/Pike.pmod index 395ce56f5b68bc1fae8da699f056416f1be45359..f86665a8637174d6788d71ccc3d1e8e1bf9cd83e 100644 --- a/lib/modules/Parser.pmod/Pike.pmod +++ b/lib/modules/Parser.pmod/Pike.pmod @@ -61,11 +61,18 @@ array(string) split(string data) break; case '.': - if(data[start..start+2]=="...") + if(data[start..start+2]=="...") { - pos+=2; + pos+=3; break; } + if(data[start..start+1]=="..") + { + pos+=2; + break; + } + pos++; + break; case '0'..'9': if(data[pos]=='0' && (data[pos+1]=='x' || data[pos+1]=='X')) @@ -86,7 +93,7 @@ array(string) split(string data) break; } while(data[pos]>='0' && data[pos]<='9') pos++; - if(data[pos]=='.') + if(data[pos]=='.' && data[pos+1]>='0' && data[pos+1]<='9') { pos++; while(data[pos]>='0' && data[pos]<='9') pos++;