summary refs log tree commit diff
path: root/rvnit.c
diff options
context:
space:
mode:
Diffstat (limited to 'rvnit.c')
-rw-r--r--rvnit.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/rvnit.c b/rvnit.c
index dcacdf1..4389477 100644
--- a/rvnit.c
+++ b/rvnit.c
@@ -441,7 +441,7 @@ logger_loop(void* ignored)
 		if (n == 1 && (fds[1].revents & POLLHUP) &&
 		    !(fds[1].revents & POLLIN)) {
 			/* selflog was closed, end thread */
-			break;
+			return 0;
 		}
 
 		for (nfds_t j = 0; j < nfds; j++) {
@@ -465,6 +465,8 @@ closed_pipe:
 					}
 				}
 				pthread_mutex_unlock(&services_lock);
+
+				continue;
 			}
 
 			if (!(fds[j].revents & POLLIN))
@@ -488,7 +490,7 @@ closed_pipe:
 				// https://www.greenend.org.uk/rjk/tech/poll.html
 				if (j == 1 && n == 1) {
 					/* selflog was closed, end thread */
-					break;
+					return 0;
 				}
 				goto closed_pipe;
 			}