summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/xrespondent.cpp4
-rw-r--r--src/xsurveyor.cpp4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/xrespondent.cpp b/src/xrespondent.cpp
index 026fe8d..c16d900 100644
--- a/src/xrespondent.cpp
+++ b/src/xrespondent.cpp
@@ -36,6 +36,10 @@ xs::xrespondent_t::xrespondent_t (class ctx_t *parent_, uint32_t tid_,
{
options.type = XS_XRESPONDENT;
+ // If the connection disappears it makes no sense to read any more surveys
+ // from it. The responses will be unroutable anyway.
+ options.delay_on_disconnect = false;
+
prefetched_msg.init ();
}
diff --git a/src/xsurveyor.cpp b/src/xsurveyor.cpp
index 4265437..985b6d8 100644
--- a/src/xsurveyor.cpp
+++ b/src/xsurveyor.cpp
@@ -26,6 +26,10 @@ xs::xsurveyor_t::xsurveyor_t (class ctx_t *parent_, uint32_t tid_, int sid_) :
socket_base_t (parent_, tid_, sid_)
{
options.type = XS_XSURVEYOR;
+
+ // When the XSURVEYOR socket is close it makes no sense to send any pending
+ // surveys. The responses will be unroutable anyway.
+ options.delay_on_close = false;
}
xs::xsurveyor_t::~xsurveyor_t ()