summaryrefslogtreecommitdiff
path: root/source/luametatex/source/tex/texprinting.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/luametatex/source/tex/texprinting.c')
-rw-r--r--source/luametatex/source/tex/texprinting.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/source/luametatex/source/tex/texprinting.c b/source/luametatex/source/tex/texprinting.c
index 860ff6731..d18445f36 100644
--- a/source/luametatex/source/tex/texprinting.c
+++ b/source/luametatex/source/tex/texprinting.c
@@ -465,15 +465,22 @@ void tex_print_str_esc(const char *s)
void tex_print_int(int n)
{
/*tex In the end a 0..9 fast path works out best; using |sprintf| is slower. */
+ if (n < 0) {
+ tex_print_char('-');
+ n = -n;
+ }
if (n >= 0 && n <= 9) {
tex_print_char('0' + n);
+ } else if (n >= 0 && n <= 99) {
+ tex_print_char('0' + n/10);
+ tex_print_char('0' + n%10);
} else {
int k = 0;
unsigned char digits[24];
- if (n < 0) {
- tex_print_char('-');
- n = -n;
- }
+// if (n < 0) {
+// tex_print_char('-');
+// n = -n;
+// }
do {
digits[k] = '0' + (unsigned char) (n % 10);
n = n / 10;