[dovecot-cvs] dovecot/src/lib ioloop-epoll.c, 1.4, 1.5 ioloop-poll.c, 1.26, 1.27 ioloop-select.c, 1.20, 1.21 ioloop.c, 1.26, 1.27

cras at dovecot.org cras at dovecot.org
Sun Aug 14 21:18:38 EEST 2005


Update of /var/lib/cvs/dovecot/src/lib
In directory talvi:/tmp/cvs-serv8134/lib

Modified Files:
	ioloop-epoll.c ioloop-poll.c ioloop-select.c ioloop.c 
Log Message:
If we leaked a t_pop() call, tell where it happened



Index: ioloop-epoll.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib/ioloop-epoll.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- ioloop-epoll.c	12 Jul 2005 15:44:49 -0000	1.4
+++ ioloop-epoll.c	14 Aug 2005 18:18:35 -0000	1.5
@@ -241,8 +241,11 @@
 			if (call) {
 				t_id = t_push();
 				io->callback(io->context);
-				if (t_pop() != t_id)
-					i_panic("Leaked a t_pop() call!");
+				if (t_pop() != t_id) {
+					i_panic("Leaked a t_pop() call in "
+						"I/O handler %p",
+						(void *)io->callback);
+				}
 			}
 		}
 		event++;

Index: ioloop-poll.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib/ioloop-poll.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- ioloop-poll.c	12 Jul 2005 15:44:49 -0000	1.26
+++ ioloop-poll.c	14 Aug 2005 18:18:35 -0000	1.27
@@ -182,8 +182,11 @@
 			if (call) {
 				t_id = t_push();
 				io->callback(io->context);
-				if (t_pop() != t_id)
-					i_panic("Leaked a t_pop() call!");
+				if (t_pop() != t_id) {
+					i_panic("Leaked a t_pop() call in "
+						"I/O handler %p",
+						(void *)io->callback);
+				}
 			}
 		}
 	}

Index: ioloop-select.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib/ioloop-select.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- ioloop-select.c	12 Jul 2005 15:44:49 -0000	1.20
+++ ioloop-select.c	14 Aug 2005 18:18:35 -0000	1.21
@@ -127,8 +127,10 @@
 
 			t_id = t_push();
 			io->callback(io->context);
-			if (t_pop() != t_id)
-				i_panic("Leaked a t_pop() call!");
+			if (t_pop() != t_id) {
+				i_panic("Leaked a t_pop() call in "
+					"I/O handler %p", (void *)io->callback);
+			}
 		}
 	}
 }

Index: ioloop.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib/ioloop.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- ioloop.c	12 Jul 2005 15:40:33 -0000	1.26
+++ ioloop.c	14 Aug 2005 18:18:35 -0000	1.27
@@ -206,8 +206,10 @@
 
                 t_id = t_push();
 		t->callback(t->context);
-		if (t_pop() != t_id)
-                        i_panic("Leaked a t_pop() call!");
+		if (t_pop() != t_id) {
+			i_panic("Leaked a t_pop() call in timeout handler %p",
+				(void *)t->callback);
+		}
 	}
 }
 



More information about the dovecot-cvs mailing list