diff options
author | 2014-12-24 18:03:34 +0000 | |
---|---|---|
committer | 2014-12-24 18:03:34 +0000 | |
commit | 0e724740c554c8a1ed447d706e9e8adfe543c94c (patch) | |
tree | fa271d83e78255bb0b110ce6afe7433b7145c051 /usr.bin/mandoc/man.h | |
parent | Prevent unsigned integer underflow when a number is too wide (diff) | |
download | wireguard-openbsd-0e724740c554c8a1ed447d706e9e8adfe543c94c.tar.xz wireguard-openbsd-0e724740c554c8a1ed447d706e9e8adfe543c94c.zip |
For .RS, we need to save the information how much we actually indented
because negative indents can get truncated, in which case we no longer
know how to restore the original indent at the end of the block.
This also solves another case of effectively infinite output found
by jsg@ with afl, triggered by very large negative indents.
Diffstat (limited to 'usr.bin/mandoc/man.h')
-rw-r--r-- | usr.bin/mandoc/man.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/usr.bin/mandoc/man.h b/usr.bin/mandoc/man.h index 7adf68fea1c..e3d120f5143 100644 --- a/usr.bin/mandoc/man.h +++ b/usr.bin/mandoc/man.h @@ -1,4 +1,4 @@ -/* $OpenBSD: man.h,v 1.47 2014/11/28 19:25:03 schwarze Exp $ */ +/* $OpenBSD: man.h,v 1.48 2014/12/24 18:03:34 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org> @@ -99,6 +99,7 @@ struct man_node { struct man_node *body; /* BLOCK node BODY ptr */ const struct tbl_span *span; /* TBL */ const struct eqn *eqn; /* EQN */ + int aux; /* decoded node data, type-dependent */ }; /* Names of macros. Index is enum mant. */ |