mirror of
https://github.com/urbit/shrub.git
synced 2025-01-03 10:02:32 +03:00
Merge pull request #1083 from urbit/terminal-parsing
Remove 30ms per dill-blit.
This commit is contained in:
commit
1a2c2c74de
23
vere/reck.c
23
vere/reck.c
@ -66,6 +66,27 @@ _reck_lily(u3_noun fot, u3_noun txt, c3_l* tid_l)
|
||||
}
|
||||
}
|
||||
|
||||
/* _reck_orchid(): parses only a number as text
|
||||
*
|
||||
* Parses a text string which contains a decimal number. In practice, this
|
||||
* number is always '1'.
|
||||
*/
|
||||
static u3_noun
|
||||
_reck_orchid(u3_noun fot, u3_noun txt, c3_l* tid_l)
|
||||
{
|
||||
c3_c* str = u3r_string(txt);
|
||||
c3_d ato_d = strtol(str, NULL, 10);
|
||||
free(str);
|
||||
|
||||
if ( ato_d >= 0x80000000ULL ) {
|
||||
return c3n;
|
||||
} else {
|
||||
*tid_l = (c3_l) ato_d;
|
||||
|
||||
return c3y;
|
||||
}
|
||||
}
|
||||
|
||||
/* _reck_kick_term(): apply terminal outputs.
|
||||
*/
|
||||
static u3_noun
|
||||
@ -314,7 +335,7 @@ _reck_kick_spec(u3_noun pox, u3_noun fav)
|
||||
|
||||
if ( (c3n == u3r_cell(pud, &p_pud, &q_pud)) ||
|
||||
(u3_nul != q_pud) ||
|
||||
(c3n == _reck_lily(c3__ud, u3k(p_pud), &tid_l)) )
|
||||
(c3n == _reck_orchid(c3__ud, u3k(p_pud), &tid_l)) )
|
||||
{
|
||||
uL(fprintf(uH, "term: bad tire\n"));
|
||||
u3z(pox); u3z(fav); return c3n;
|
||||
|
Loading…
Reference in New Issue
Block a user