+ int r;
+ /* in case of death shutdown to avoid blocking at close() */
+
+ r= shutdown(ptr->fd, SHUT_RDWR);
+
+#ifdef HAVE_DEBUG
+ if (r && errno != ENOTCONN)
+ {
+ WATCHPOINT_ERRNO(errno);
+ WATCHPOINT_ASSERT(errno);
+ }
+#endif
+
+ r= close(ptr->fd);
+ WATCHPOINT_ASSERT(r == 0);