summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/src/globals.c1
-rw-r--r--src/src/routers/queryprogram.c2
-rw-r--r--src/src/routers/redirect.c2
3 files changed, 3 insertions, 2 deletions
diff --git a/src/src/globals.c b/src/src/globals.c
index 7f6ce6d40..f3fdb5975 100644
--- a/src/src/globals.c
+++ b/src/src/globals.c
@@ -399,6 +399,7 @@ address_item address_defaults = {
#ifdef EXPERIMENTAL_SRS
.srs_sender = NULL,
#endif
+ .ignore_error = FALSE,
#ifdef SUPPORT_I18N
.utf8_msg = FALSE,
.utf8_downcvt = FALSE,
diff --git a/src/src/routers/queryprogram.c b/src/src/routers/queryprogram.c
index fc92835c0..abba024db 100644
--- a/src/src/routers/queryprogram.c
+++ b/src/src/routers/queryprogram.c
@@ -130,7 +130,7 @@ while (generated != NULL)
next->parent = addr;
next->prop = *addr_prop;
- next->prop.ignore_error |= ignore_error;
+ next->prop.ignore_error = next->prop.ignore_error || ignore_error;
next->start_router = rblock->redirect_router;
next->next = *addr_new;
diff --git a/src/src/routers/redirect.c b/src/src/routers/redirect.c
index 005ec6f47..9923af585 100644
--- a/src/src/routers/redirect.c
+++ b/src/src/routers/redirect.c
@@ -390,7 +390,7 @@ while (generated)
{
BOOL ignore_error = next->prop.ignore_error;
next->prop = *addr_prop;
- next->prop.ignore_error |= ignore_error;
+ next->prop.ignore_error = ignore_error || addr->prop.ignore_error;
}
if (errors_address) next->prop.errors_address = errors_address;