tbl's calculation for how many columns it can handle is wrong. sizeof(nregs) = nelem(nregs)*sizeof(char*). it appears that tbl is assuming *2-byte pointers*!
huzzah!
- erik
/n/dump/2013/0104/sys/src/cmd/tbl/tr.c:20,26 - tr.c:20,26
char *
reg(int col, int place)
{
- if (sizeof(nregs) < 2 * 3 * qcol)
+ if(qcol*place+col >= nelem(nregs)-1)
error("Too many columns for registers");
return (nregs[qcol*place+col]);
}
