diff options
| author | 2007-01-30 12:07:49 +0000 | |
|---|---|---|
| committer | 2007-01-30 12:07:49 +0000 | |
| commit | d3e83447475df2864d9cb304f32c1bb5ab3b0970 (patch) | |
| tree | 11bb62c5e7a216e6dc6ec8556e16a0660f6c6151 /src/modules/ident/libkviident.cpp | |
| parent | fixes for logging and regusers (diff) | |
| download | KVIrc-d3e83447475df2864d9cb304f32c1bb5ab3b0970.tar.gz KVIrc-d3e83447475df2864d9cb304f32c1bb5ab3b0970.tar.bz2 KVIrc-d3e83447475df2864d9cb304f32c1bb5ab3b0970.zip | |
Introduced option using identd only on connect, some fixes around
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@283 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/ident/libkviident.cpp')
| -rw-r--r-- | src/modules/ident/libkviident.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/modules/ident/libkviident.cpp b/src/modules/ident/libkviident.cpp index 460cd046a..3e8acef5a 100644 --- a/src/modules/ident/libkviident.cpp +++ b/src/modules/ident/libkviident.cpp @@ -43,7 +43,7 @@ static KviIdentDaemon * g_pIdentDaemon = 0; static KviIdentSentinel * g_pIdentSentinel = 0; -extern KVIRC_API bool g_bIdentDaemonRunning; +extern KVIRC_API int g_iIdentDaemonRunningUsers; void startIdentService() { @@ -153,7 +153,6 @@ KviIdentDaemon::KviIdentDaemon() m_bEnableIpV6 = false; #endif m_bIpV6ContainsIpV4 = KVI_OPTION_BOOL(KviOption_boolIdentdIpV6ContainsIpV4); - g_bIdentDaemonRunning = true; // debug("Thread constructor done"); } @@ -161,7 +160,7 @@ KviIdentDaemon::~KviIdentDaemon() { // debug("Thread destructor"); terminate(); - g_bIdentDaemonRunning = false; + g_iIdentDaemonRunningUsers = 0; g_pIdentDaemon = 0; // debug("Destructor gone"); @@ -545,7 +544,9 @@ exit_thread: static bool ident_kvs_cmd_start(KviKvsModuleCommandCall * c) { - startIdentService(); + if(!g_iIdentDaemonRunningUsers) + startIdentService(); + g_iIdentDaemonRunningUsers++; return true; } @@ -567,7 +568,8 @@ static bool ident_kvs_cmd_start(KviKvsModuleCommandCall * c) static bool ident_kvs_cmd_stop(KviKvsModuleCommandCall * c) { - stopIdentService(); + if(g_iIdentDaemonRunningUsers) g_iIdentDaemonRunningUsers--; + if(!g_iIdentDaemonRunningUsers) stopIdentService(); return true; } |
