summaryrefslogtreecommitdiffstatshomepage
path: root/man.c
diff options
context:
space:
mode:
Diffstat (limited to 'man.c')
-rw-r--r--man.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/man.c b/man.c
index 4f02352b..8e9165f2 100644
--- a/man.c
+++ b/man.c
@@ -1,4 +1,4 @@
-/* $Id: man.c,v 1.47 2010/01/01 17:14:27 kristaps Exp $ */
+/* $Id: man.c,v 1.48 2010/01/07 10:05:24 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se>
*
@@ -378,6 +378,7 @@ man_ptext(struct man *m, int line, char *buf)
for (i = 0; ' ' == buf[i]; i++)
/* Skip leading whitespace. */ ;
+
if (0 == buf[i]) {
if ( ! pstring(m, line, 0, &buf[i], 0))
return(0);
@@ -463,7 +464,7 @@ man_pmacro(struct man *m, int ln, char *buf)
i++;
while (buf[i] && ' ' == buf[i])
i++;
- if (0 == buf[i])
+ if ('\0' == buf[i])
goto out;
}
@@ -472,7 +473,7 @@ man_pmacro(struct man *m, int ln, char *buf)
/* Copy the first word into a nil-terminated buffer. */
for (j = 0; j < 4; j++, i++) {
- if (0 == (mac[j] = buf[i]))
+ if ('\0' == (mac[j] = buf[i]))
break;
else if (' ' == buf[i])
break;
@@ -507,6 +508,12 @@ man_pmacro(struct man *m, int ln, char *buf)
while (buf[i] && ' ' == buf[i])
i++;
+ /* Trailing whitespace? */
+
+ if ('\0' == buf[i] && ' ' == buf[i - 1])
+ if ( ! man_pwarn(m, ln, i - 1, WTSPACE))
+ goto err;
+
/* Remove prior ELINE macro, if applicable. */
if (m->flags & MAN_ELINE) {