summaryrefslogtreecommitdiff
path: root/www/mozilla/patches/patch-as
diff options
context:
space:
mode:
Diffstat (limited to 'www/mozilla/patches/patch-as')
-rw-r--r--www/mozilla/patches/patch-as68
1 files changed, 68 insertions, 0 deletions
diff --git a/www/mozilla/patches/patch-as b/www/mozilla/patches/patch-as
new file mode 100644
index 00000000000..71139ab6d86
--- /dev/null
+++ b/www/mozilla/patches/patch-as
@@ -0,0 +1,68 @@
+$NetBSD: patch-as,v 1.1 2001/03/30 09:37:50 taya Exp $
+
+diff -ru ../Orig/mozilla/netwerk/dns/src/nsDnsService.cpp ./netwerk/dns/src/nsDnsService.cpp
+--- ../Orig/mozilla/netwerk/dns/src/nsDnsService.cpp Fri Mar 23 23:23:37 2001
++++ ./netwerk/dns/src/nsDnsService.cpp Sat Mar 24 01:35:04 2001
+@@ -943,6 +943,11 @@
+
+ nsAutoMonitor mon(mLookupQMon);
+
++ // Don't wait on the monitor if we're in the process
++ // of shutting down the DNS service.
++ if (mShutdownInProgress)
++ return NS_OK;
++
+ // Wait for notification of a queued request.
+ if (!mLookupQ)
+ mon.Wait();
+@@ -967,22 +972,21 @@
+ ////////////////////////////////////////////////////////////////////////////////
+
+ nsDNSService::nsDNSService()
+- : mState(NS_OK),
+- mMonitor(nsnull),
+- mLookups(64)
++ : mState(NS_OK)
++ , mMonitor(nsnull)
++ , mLookups(64)
+ #if defined(XP_UNIX)
+ , mLookupQ(nsnull)
++ , mLookupQMon(nsnull)
++ , mShutdownInProgress(PR_FALSE)
+ #endif
+ #ifdef DNS_TIMING
+- ,
+- mCount(0),
+- mTimes(0),
+- mSquaredTimes(0),
+- mOut(nsnull)
+-
++ , mCount(0)
++ , mTimes(0)
++ , mSquaredTimes(0)
++ , mOut(nsnull)
+ #endif
+- ,
+- mMyIPAddress(0)
++ , mMyIPAddress(0)
+ {
+ NS_INIT_REFCNT();
+
+@@ -1262,9 +1266,7 @@
+ if (NS_FAILED(rv)) return rv;
+
+ if (lookup) {
+- //
+ // Got a request!!
+- //
+ lookup->DoSyncLookup();
+ NS_RELEASE(lookup);
+ } else
+@@ -1544,6 +1546,7 @@
+ // Clear the lookup queue and wake up the worker thread.
+ //
+ nsAutoMonitor mon2(mLookupQMon);
++ mShutdownInProgress = PR_TRUE;
+ if (mLookupQ) {
+ mLookupQ->ClearNextLookup();
+ NS_RELEASE(mLookupQ);