summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2001-10-26 08:08:26 +0000
committerSimon Tatham <anakin@pobox.com>2001-10-26 08:08:26 +0000
commit474275049b94784ab1ba9fe2bfd75951a46e975a (patch)
tree89a5298b866eb59a53fb7053510715c033738aad
parent3e043306f1594f7528788a1c593995b391fc7a5a (diff)
downloadhalibut-474275049b94784ab1ba9fe2bfd75951a46e975a.zip
halibut-474275049b94784ab1ba9fe2bfd75951a46e975a.tar.gz
halibut-474275049b94784ab1ba9fe2bfd75951a46e975a.tar.bz2
halibut-474275049b94784ab1ba9fe2bfd75951a46e975a.tar.xz
Oops, that new heading-level error check was a bit over-zealous.
Fixed again. [originally from svn r1330]
-rw-r--r--buttress.h2
-rw-r--r--contents.c3
-rw-r--r--keywords.c9
3 files changed, 4 insertions, 10 deletions
diff --git a/buttress.h b/buttress.h
index 8f8961a..04c0dbb 100644
--- a/buttress.h
+++ b/buttress.h
@@ -375,7 +375,7 @@ void index_debug(index *);
*/
numberstate *number_init(void);
void number_cfg(numberstate *, paragraph *);
-word *number_mktext(numberstate *, int, int, int, word **, filepos);
+word *number_mktext(numberstate *, int, int, int, word **, filepos, int *);
void number_free(numberstate *);
/*
diff --git a/contents.c b/contents.c
index 7688d75..6032133 100644
--- a/contents.c
+++ b/contents.c
@@ -116,7 +116,7 @@ void number_cfg(numberstate *state, paragraph *source) {
}
word *number_mktext(numberstate *state, int para, int aux, int prev,
- word **auxret, filepos fpos) {
+ word **auxret, filepos fpos, int *errflag) {
word *ret = NULL;
word **ret2 = &ret;
word **pret = &ret;
@@ -139,6 +139,7 @@ word *number_mktext(numberstate *state, int para, int aux, int prev,
level = (para == para_Heading ? 0 : aux);
if (level > state->oklevel) {
error(err_sectjump, &fpos);
+ *errflag = TRUE;
return NULL;
}
state->oklevel = level+1;
diff --git a/keywords.c b/keywords.c
index 7dd35b1..b401690 100644
--- a/keywords.c
+++ b/keywords.c
@@ -104,14 +104,7 @@ keywordlist *get_keywords(paragraph *source) {
*/
source->kwtext = number_mktext(n, source->type, source->aux,
prevpara, &source->kwtext2,
- source->fpos);
- if (!source->kwtext) {
- /* There was an error collecting the section numbers.
- * number_mktext has reported it; we record it and bail
- * out at the end. */
- errors = TRUE;
- continue;
- }
+ source->fpos, &errors);
prevpara = source->type;
if (source->keyword && *source->keyword) {