From a13ba4347f92afc63497991210bc59e6bd2434d0 Mon Sep 17 00:00:00 2001 From: Derrell Lipman Date: Wed, 13 May 2009 14:51:43 -0400 Subject: [PATCH] What to do about debugging in a multi-threaded application? - For now, punt. Any thread that requests debug to stderr will establish that for all threads. Derrell --- source3/libsmb/libsmb_context.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/source3/libsmb/libsmb_context.c b/source3/libsmb/libsmb_context.c index 03cd00d2c18..bacd9075120 100644 --- a/source3/libsmb/libsmb_context.c +++ b/source3/libsmb/libsmb_context.c @@ -48,13 +48,6 @@ SMBC_module_init(void * punused) setup_logging("libsmbclient", True); -#if 0 /* need a place to put this (thread local storage) */ - if (context->internal->debug_stderr) { - dbf = x_stderr; - x_setbuf(x_stderr, NULL); - } -#endif - /* Here we would open the smb.conf file if needed ... */ lp_set_in_client(True); @@ -553,6 +546,16 @@ smbc_init_context(SMBCCTX *context) return NULL; } + if (context->internal->debug_stderr) { + /* + * Hmmm... Do we want a unique dbf per-thread? For now, we'll just + * leave it up to the user. If any one context spefies debug to + * stderr then all will be. + */ + dbf = x_stderr; + x_setbuf(x_stderr, NULL); + } + if ((!smbc_getFunctionAuthData(context) && !smbc_getFunctionAuthDataWithContext(context)) || smbc_getDebug(context) < 0 || -- 2.34.1