summaryrefslogtreecommitdiff
path: root/omapip/connection.c
diff options
context:
space:
mode:
authorTed Lemon <source@isc.org>2000-06-06 23:47:14 +0000
committerTed Lemon <source@isc.org>2000-06-06 23:47:14 +0000
commitee3aeca67f7f1e01bf70d782f9e0caaa66da4242 (patch)
tree133f9590e62be6e47b8677ee5be3e081dab958e9 /omapip/connection.c
parentd0411fbd4d861fc049a1421368174e9619d9b40c (diff)
downloadisc-dhcp-ee3aeca67f7f1e01bf70d782f9e0caaa66da4242.tar.gz
Completely break connection to I/O object when connection is severed.
Diffstat (limited to 'omapip/connection.c')
-rw-r--r--omapip/connection.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/omapip/connection.c b/omapip/connection.c
index 8b0cb986..2d85c39b 100644
--- a/omapip/connection.c
+++ b/omapip/connection.c
@@ -234,8 +234,11 @@ isc_result_t omapi_disconnect (omapi_object_t *h,
c -> state = omapi_connection_closed;
/* Disconnect from I/O object, if any. */
- if (h -> outer)
+ if (h -> outer) {
+ if (h -> outer -> inner)
+ omapi_object_dereference (&h -> outer -> inner, MDL);
omapi_object_dereference (&h -> outer, MDL);
+ }
/* If whatever created us registered a signal handler, send it
a disconnect signal. */