/* we need escaping! */
s2 = s2p = pool_alloctmpspace(pool, strlen(s) + bad * 2 + 1);
- ss = s;
if (!strncmp(s, "namespace:", 10))
{
strcpy(s2p, "namespace\\3a");
s2p += 12;
s += 10;
}
+ ss = s;
for (; *ss; ss++)
{
*s2p++ = *ss;
else
{
sprintf(cntbuf, "genid %2d: genid ", cnt++);
- s = pool_tmpjoin(pool, cntbuf, id ? "lit" : "null", id ? pool_id2str(pool, id) : 0);
+ s = pool_tmpjoin(pool, cntbuf, id ? "lit " : "null", id ? pool_id2str(pool, id) : 0);
}
strqueue_push(sq, s);
return cnt;
id = pool_rel2id(pool, genid[ngenid] , genid[ngenid + 1], op->flags, 1);
}
else if (!strcmp(pieces[1], "lit"))
- id = pool_str2id(pool, pieces[2], 1);
+ id = pool_str2id(pool, npieces > 2 ? pieces[2] : "", 1);
else if (!strcmp(pieces[1], "null"))
id = 0;
else if (!strcmp(pieces[1], "dep"))