When negated, they still count as false.
Found when investigating crashes jsg@ found with afl.
Not completely fixing the crashes yet.
-.TH IE 1 "July 1, 2014" OpenBSD
+.TH IE 1 "December 16, 2014" OpenBSD
.SH NAME
if \- the roff conditional instruction with else-clause
.SH DESCRIPTION
.br
.el Another else after false.
.br
+.ie
+Text following an empty condition.
+.el Else after empty condition.
+.br
+.ie !
+Text following negated empty condition.
+.el Else after negated empty condition.
+.br
.ie n If \&.el\e{ works, nothing follows here:
.el\{dummy
BOOHOO\}
Text following the true condition.
Text following the false condition.
Two-line else after false.
+ Else after empty condition.
+ Else after negated empty condition.
If .el\{ works, nothing follows here:
-OpenBSD July 1, 2014 IE(1)
+OpenBSD December 16, 2014 IE(1)
-/* $OpenBSD: roff.c,v 1.111 2014/11/19 01:20:18 schwarze Exp $ */
+/* $OpenBSD: roff.c,v 1.112 2014/12/15 23:42:31 schwarze Exp $ */
/*
* Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2014 Ingo Schwarze <schwarze@openbsd.org>
wanttrue = 1;
switch (v[*pos]) {
+ case '\0':
+ return(0);
case 'n':
/* FALLTHROUGH */
case 'o':