summaryrefslogtreecommitdiffstats
path: root/out.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2018-08-18 16:44:55 +0000
committerIngo Schwarze <schwarze@openbsd.org>2018-08-18 16:44:55 +0000
commita2a4ecf5147dc4f5f1cd13783f806e379b0ed326 (patch)
tree629c571ef409234fa9358f1b30ca23210d2f53b0 /out.c
parentb81e66843d26bb7ffa842efd9bd182a86d75a54e (diff)
downloadmandoc-a2a4ecf5147dc4f5f1cd13783f806e379b0ed326.tar.gz
Do not allocate a column for decimal points if all numbers are integers.
Diffstat (limited to 'out.c')
-rw-r--r--out.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/out.c b/out.c
index 5e7cc3b3..1364d8d4 100644
--- a/out.c
+++ b/out.c
@@ -1,7 +1,7 @@
/* $Id$ */
/*
* Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
- * Copyright (c) 2011, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
+ * Copyright (c) 2011,2014,2015,2017,2018 Ingo Schwarze <schwarze@openbsd.org>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -320,7 +320,7 @@ tblcalc_number(struct rofftbl *tbl, struct roffcol *col,
const struct tbl_opts *opts, const struct tbl_dat *dp)
{
int i;
- size_t sz, psz, ssz, d;
+ size_t sz, ssz, d;
const char *str;
char *cp;
char buf[2];
@@ -342,17 +342,15 @@ tblcalc_number(struct rofftbl *tbl, struct roffcol *col,
buf[0] = opts->decimal;
buf[1] = '\0';
- psz = (*tbl->slen)(buf, tbl->arg);
-
if (NULL != (cp = strrchr(str, opts->decimal))) {
buf[1] = '\0';
for (ssz = 0, i = 0; cp != &str[i]; i++) {
buf[0] = str[i];
ssz += (*tbl->slen)(buf, tbl->arg);
}
- d = ssz + psz;
+ d = ssz;
} else
- d = sz + psz;
+ d = sz;
/* Adjust the settings for this column. */