select: Call log_reset_context() before calling file descriptor callbacks

Make sure to clear any log context before processing the next incoming message
as part of some file descriptor callback.  This effectively prevents "context
leaking" from processing of one message into processing of the next message as part
of one iteration through the list of file descriptors here.

Change-Id: I3644c7bc1a9cec5858eb0faf94efc8c3ba7f5d8d
Closes: OS#3813
diff --git a/src/select.c b/src/select.c
index b594ca5..4e7be35 100644
--- a/src/select.c
+++ b/src/select.c
@@ -35,6 +35,7 @@
 #include <osmocom/core/select.h>
 #include <osmocom/core/linuxlist.h>
 #include <osmocom/core/timer.h>
+#include <osmocom/core/logging.h>
 
 #include "../config.h"
 
@@ -214,6 +215,11 @@
 
 		if (flags) {
 			work = 1;
+			/* make sure to clear any log context before processing the next incoming message
+			 * as part of some file descriptor callback.  This effectively prevents "context
+			 * leaking" from processing of one message into processing of the next message as part
+			 * of one iteration through the list of file descriptors here.  See OS#3813 */
+			log_reset_context();
 			ufd->cb(ufd, flags);
 		}
 		/* ugly, ugly hack. If more than one filedescriptor was