| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
If a database is empty, we already don't write a database file and
delete an existing one. If none exists, that only means the database
was empty and remains so, which is not an error. So don't nag about
it, in particular because that would be a weekly(8) annoyance.
Issue reported by jmc@.
|
| |
|
|
|
|
| |
suggested by bentley@, improves e.g. glMultMatrix(3)
|
|
|
|
| |
fixing tree corruption and assertion failure found by jsg@ with afl(1)
|
|
|
|
|
|
| |
unable to figure out that it is never used uninitialized.
While here, tweak the content of the variable to make its usage
easier to understand. No functional change.
|
|
|
|
|
|
| |
Even though we skip the style when the argument is NULL,
we must still consume the options.
Not found with afl(1), but during manual testing of the previous patch...
|
|
|
|
|
|
|
|
| |
attributes into .It blocks; suggested by Steffen Nurpmeso <steffen
at sdaoden dot eu> on <groff at GNU dot org> in April 2017.
Delete margin-bottom and margin-top style names and the 'v' argument
letter from print_otag() because they are no longer used.
|
|
|
|
| |
from bentley@, tweaked by me
|
|
|
|
| |
issue reported by bentley@
|
| |
|
|
|
|
| |
and use after free many ensue; again found by jsg@ with afl(1)
|
|
|
|
|
|
|
|
|
|
|
|
| |
right from roff_parseln() rather than delegating to read.c,
similar to what i just did for eqn(7).
The interface function roff_span() becomes obsolete and is deleted,
the former interface function roff_addtbl() becomes static,
the interface functions tbl_read() and tbl_cdata() become void,
and minus twelve linus of code.
No functional change.
|
|
|
|
| |
found by jsg@ with afl(1)
|
|
|
|
|
|
| |
of struct roff_node which is allocated for each equation anyway.
2. Do not keep a list of equation parsers, one parser is enough.
Minus fifty lines of code, no functional change.
|
|
|
|
|
|
|
|
| |
fixing an assertion failure found by jsg@ with afl(1).
While here, also drop printing of whitespace in tbl_data()
which makes no difference because column positioning code
in term_tbl() already takes care of that.
|
| |
|
| |
|
|
|
|
| |
parameter; also minus two lines of code; no functional change
|
|
|
|
| |
and WARNING mean: minus 20 lines of mdoc source. OK jmc@.
|
|
|
|
|
|
| |
that are not syntax mistakes and that do not cause wrong formatting
or content to style suggestions.
Also upgrade two warnings that may cause information loss to errors.
|
|
|
|
|
| |
L. Cherry, "Typesetting Mathematics - User's Guide (Second Edition)",
August 15, 1978, paragraph 23; swarm of bugs pointed out by bentley@.
|
|
|
|
|
|
| |
Simplify by just using EQN_LIST with expectargs = 1.
Noticed while investigating a bug report from bentley@.
No functional change.
|
| |
|
| |
|
|
|
|
| |
Cures bogus error messages in pages generated with pod2man(1).
|
|
|
|
| |
i thought. Fixing a bug in curs_addch(3) and minus 25 lines of code.
|
| |
|
|
|
|
|
|
|
|
| |
causes horrible churn anyway, profit of the opportunity to stop
excessive testing, such that this is hopefully the last instance
of such churn. Consistently use OpenBSD RCS tags, blank .Os,
blank fourth .TH argument, and Mdocdate like everywhere else.
Use -Ios=OpenBSD for platform-independent predictable output.
|
|
|
|
|
| |
is confusing, simply print "STYLE:", which is intuitive and does not
sound excessively alarming; suggested by jmc@, OK tedu@ jmc@.
|
|
|
|
| |
the idea came up in a discussion with Thomas Klausner <wiz at NetBSD>
|
| |
|
|
|
|
|
|
| |
once, print "(N times)" after the message "referenced manual not
found", to lessen the risk that people fix the first instance and
miss the others; jmc@ confirmed that this is useful.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
looking in the current working directory. Not a security issue
because the files are never open(2)ed, only access(2)ed.
Requested by jmc@ and inspired by mdoclint(1).
This cannot be perfect because it only works for files having the
exact filename ./pagename.sec - mandoc has no way to figure out
which files might contain a manual for multiple names, or that files
in autohell might be called ./pagename.man.in instead, or which
subdirectories might contain additional source files. Also, it may
hide messages if you have bogus stuff lying around in the directory
where you run mandoc -Tlint. But jmc@ considers it important, and
good enough for everyday use.
Also avoid leaking the memory for the file name while here.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fall back from database search to file system search
just like man(1) does when looking up manuals.
This is not too expensive because on a system having up-to-date
mandoc.db(5) files, it only prolongs the time needed to check
*invalid* references - and you are not supposed to have many of
those, right? And on a system with missing or invalid mandoc.db(5)
files, spending a bit of time and warning loudly about the real
problem is also better than quickly issuing bogus warnings about
cross references that are actually valid.
|
|
|
|
|
|
|
|
|
|
|
|
| |
in the base system, inspired by mdoclint(1).
We are able to do this because (1) the -mdoc parser, the -Tlint validator,
and the man(1) manual page lookup code are all in the same program
and (2) the mandoc.db(5) database format allows fast lookup.
Feedback from, previous versions tested by, and OK jmc@.
A few features will be added to this in the tree, step by step.
|
|
|
|
|
|
| |
in particular ~ and ^ that misrendered;
found by bentley@ in glCopyTexSubImage1D(3); also affected
glAccum(3), glClipPlane(3), glDrawPixels(3), glEvalMesh(3), and others.
|
|
|
|
| |
triggered by a question from Yuri Pankov (illumos)
|
|
|
|
|
| |
even though mandoc(1) handles it;
triggered by a question from Yuri Pankov (illumos).
|
|
|
|
| |
assertion failure in tclsh(1) reported by deraadt@ via bentley@
|
|
|
|
|
|
|
|
| |
Remove several lies, lots of duplicate information,
and a lengthy discussion of features we don't support.
Clarify the wording in some places and make it more concise in others.
Delete examples from where they don't belong
and write a new EXAMPLES section from scratch.
|
| |
|
|
|
|
|
| |
this is for example used by lftp(1)
and, ironically, misused by our very own tbl(7) manual...
|
|
|
|
| |
by an isolated closing delimiter; inspired by mdoclint
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modes instead of four functions, resulting in considerable
simplification, fifty lines less of code, fifteen fewer automatic
variables, and several bug fixes, for example:
1. The delim control statement consumes exactly two bytes of input,
requires no whitespace after these two bytes, and does not treat
quotes in any special way.
2. If the argument of left, right, gfont, gsize, or size is defined
as an alias, only the first word of the value is used as the
delimiter, font name, or font size.
3. If a back, fwd, down, or up keyword is followed by another keyword
instead of the required number, GNU eqn does nothing useful, but
typically errors out. So no need to have special handling (with
an ugly goto!) for it in mandoc.
Also getting rid of one pointless static buffer and twelve redundant
calls to strlcpy(3).
|
|
|
|
| |
do not forget to close the inserted list box
|
|
|
|
|
|
| |
I'm using a very simple, linear time / zero space fuzzy string
matching heuristic rather than a full Levenshtein metric, to keep
the code both simple and fast.
|
| |
|