changeset 2235:dcff4c088f1a HEAD

DEBUG: If GDB environment is set, don't do fd leak checks.
author Timo Sirainen <tss@iki.fi>
date Wed, 23 Jun 2004 20:48:35 +0300
parents 60802bea8f32
children 43b82a35888d
files src/imap/main.c src/login-common/main.c src/master/main.c src/pop3/main.c
diffstat 4 files changed, 13 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/imap/main.c	Wed Jun 23 20:47:06 2004 +0300
+++ b/src/imap/main.c	Wed Jun 23 20:48:35 2004 +0300
@@ -166,7 +166,7 @@
 int main(int argc __attr_unused__, char *argv[], char *envp[])
 {
 #ifdef DEBUG
-	if (getenv("LOGGED_IN") != NULL)
+	if (getenv("LOGGED_IN") != NULL && getenv("GDB") == NULL)
 		fd_debug_verify_leaks(3, 1024);
 #endif
 	/* NOTE: we start rooted, so keep the code minimal until
--- a/src/login-common/main.c	Wed Jun 23 20:47:06 2004 +0300
+++ b/src/login-common/main.c	Wed Jun 23 20:48:35 2004 +0300
@@ -229,7 +229,7 @@
 	is_inetd = getenv("DOVECOT_MASTER") == NULL;
 
 #ifdef DEBUG
-	if (!is_inetd)
+	if (!is_inetd && getenv("GDB") == NULL)
 		fd_debug_verify_leaks(4, 1024);
 #endif
 	/* NOTE: we start rooted, so keep the code minimal until
--- a/src/master/main.c	Wed Jun 23 20:47:06 2004 +0300
+++ b/src/master/main.c	Wed Jun 23 20:48:35 2004 +0300
@@ -37,6 +37,9 @@
 struct hash_table *pids;
 int null_fd, inetd_login_fd;
 uid_t master_uid;
+#ifdef DEBUG
+static int gdb;
+#endif
 
 int validate_str(const char *str, size_t max_len)
 {
@@ -57,6 +60,10 @@
 
 	/* we'll log through master process */
 	env_put("LOG_TO_MASTER=1");
+
+#ifdef DEBUG
+	if (gdb) env_put("GDB=1");
+#endif
 }
 
 static void sig_quit(int signo __attr_unused__)
@@ -469,6 +476,9 @@
 		exit(FATAL_DEFAULT);
 	open_fds();
 
+#ifdef DEBUG
+	gdb = getenv("GDB") != NULL;
+#endif
 	/* we don't need any environment */
 	env_clean();
 
--- a/src/pop3/main.c	Wed Jun 23 20:47:06 2004 +0300
+++ b/src/pop3/main.c	Wed Jun 23 20:48:35 2004 +0300
@@ -138,7 +138,7 @@
 int main(int argc __attr_unused__, char *argv[], char *envp[])
 {
 #ifdef DEBUG
-	if (getenv("LOGGED_IN") != NULL)
+	if (getenv("LOGGED_IN") != NULL && getenv("GDB") == NULL)
 		fd_debug_verify_leaks(3, 1024);
 #endif
 	/* NOTE: we start rooted, so keep the code minimal until