- MUST( get_p(across) != '+', MI(colno);MP(across);MR(mainr);MI(commbasey) );
- WALK_UNTIL(across, x,+1, mainr.br.x, '+');
- MUST( colno < MAX_COLUMNS, MP(across);MR(mainr);MI(commbasey); );
- int colrx= across.x;
- if (colrx > mainr.br.x) colrx= mainr.br.x;
+
+#define LIMIT_QUITEQ(cond,mp) { if (!(cond)) break; }
+ debug_rect("across",colno*1000000+__LINE__, across);
+ ADJUST_BOX(across, "+",>=,comminty-1, mainr.br.x, LIMIT_QUITEQ, br,x,+1);
+ debug_rect("across",colno*1000000+__LINE__, across);
+
+ MUST( colno < MAX_COLUMNS, MI(colno);MR(across);MR(mainr);MI(commbasey); );
+ int colrx= across.br.x-1;
+ if (colrx >= mainr.br.x) colrx= mainr.br.x;