2b3fd56291
- update Enigmail to 1.4.1 - added mozilla-revert_621446.patch - added mozilla-libnotify.patch (bmo#737646) - added mailnew-showalert.patch (bmo#739146) - added mozilla-gcc47.patch and mailnews-literals.patch to fix compilation issues with recent gcc 4.7 - disabled crashreporter temporarily for Factory (gcc 4.7 issue) OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaThunderbird?expand=0&rev=166
149 lines
5.0 KiB
Diff
149 lines
5.0 KiB
Diff
# HG changeset patch
|
|
# Parent 8da41a2cee774ce4d00b9ac1032a495b8bc560a0
|
|
Revert investigation patch for bmo#621446; as it is useless on desktop and breaks the build for certain compilers
|
|
|
|
diff --git a/netwerk/protocol/http/HttpChannelParent.cpp b/netwerk/protocol/http/HttpChannelParent.cpp
|
|
--- a/netwerk/protocol/http/HttpChannelParent.cpp
|
|
+++ b/netwerk/protocol/http/HttpChannelParent.cpp
|
|
@@ -52,29 +52,25 @@
|
|
#include "nsIBadCertListener2.h"
|
|
#include "nsICacheEntryDescriptor.h"
|
|
#include "nsSerializationHelper.h"
|
|
#include "nsISerializable.h"
|
|
#include "nsIAssociatedContentSecurity.h"
|
|
#include "nsIApplicationCacheService.h"
|
|
#include "nsIOfflineCacheUpdate.h"
|
|
#include "nsIRedirectChannelRegistrar.h"
|
|
-#include "prinit.h"
|
|
|
|
namespace mozilla {
|
|
namespace net {
|
|
|
|
HttpChannelParent::HttpChannelParent(PBrowserParent* iframeEmbedding)
|
|
: mIPCClosed(false)
|
|
, mStoredStatus(0)
|
|
, mStoredProgress(0)
|
|
, mStoredProgressMax(0)
|
|
- , mSentRedirect1Begin(false)
|
|
- , mSentRedirect1BeginFailed(false)
|
|
- , mReceivedRedirect2Verify(false)
|
|
{
|
|
// Ensure gHttpHandler is initialized: we need the atom table up and running.
|
|
nsIHttpProtocolHandler* handler;
|
|
CallGetService(NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "http", &handler);
|
|
NS_ASSERTION(handler, "no http handler");
|
|
|
|
mTabParent = do_QueryObject(static_cast<TabParent*>(iframeEmbedding));
|
|
}
|
|
@@ -326,21 +322,16 @@ HttpChannelParent::RecvUpdateAssociatedC
|
|
mAssociatedContentSecurity->SetCountSubRequestsHighSecurity(high);
|
|
mAssociatedContentSecurity->SetCountSubRequestsLowSecurity(low);
|
|
mAssociatedContentSecurity->SetCountSubRequestsBrokenSecurity(broken);
|
|
mAssociatedContentSecurity->SetCountSubRequestsNoSecurity(no);
|
|
}
|
|
return true;
|
|
}
|
|
|
|
-// Bug 621446 investigation, we don't want conditional PR_Aborts bellow to be
|
|
-// merged to a single address.
|
|
-#pragma warning(disable : 4068)
|
|
-#pragma GCC optimize ("O0")
|
|
-
|
|
bool
|
|
HttpChannelParent::RecvRedirect2Verify(const nsresult& result,
|
|
const RequestHeaderTuples& changedHeaders)
|
|
{
|
|
if (NS_SUCCEEDED(result)) {
|
|
nsCOMPtr<nsIHttpChannel> newHttpChannel =
|
|
do_QueryInterface(mRedirectChannel);
|
|
|
|
@@ -348,40 +339,21 @@ HttpChannelParent::RecvRedirect2Verify(c
|
|
for (PRUint32 i = 0; i < changedHeaders.Length(); i++) {
|
|
newHttpChannel->SetRequestHeader(changedHeaders[i].mHeader,
|
|
changedHeaders[i].mValue,
|
|
changedHeaders[i].mMerge);
|
|
}
|
|
}
|
|
}
|
|
|
|
- if (!mRedirectCallback) {
|
|
- // Bug 621446 investigation (optimization turned off above)
|
|
- if (mReceivedRedirect2Verify)
|
|
- NS_RUNTIMEABORT("Duplicate fire");
|
|
- if (mSentRedirect1BeginFailed)
|
|
- NS_RUNTIMEABORT("Send to child failed");
|
|
- if (mSentRedirect1Begin && NS_FAILED(result))
|
|
- NS_RUNTIMEABORT("Redirect failed");
|
|
- if (mSentRedirect1Begin && NS_SUCCEEDED(result))
|
|
- NS_RUNTIMEABORT("Redirect succeeded");
|
|
- if (!mRedirectChannel)
|
|
- NS_RUNTIMEABORT("Missing redirect channel");
|
|
- }
|
|
-
|
|
- mReceivedRedirect2Verify = true;
|
|
-
|
|
mRedirectCallback->OnRedirectVerifyCallback(result);
|
|
mRedirectCallback = nsnull;
|
|
return true;
|
|
}
|
|
|
|
-// Bug 621446 investigation
|
|
-#pragma GCC reset_options
|
|
-
|
|
bool
|
|
HttpChannelParent::RecvDocumentChannelCleanup()
|
|
{
|
|
// From now on only using mAssociatedContentSecurity. Free everything else.
|
|
mChannel = 0; // Reclaim some memory sooner.
|
|
mCacheDescriptor = 0; // Else we'll block other channels reading same URI
|
|
return true;
|
|
}
|
|
@@ -583,24 +555,18 @@ HttpChannelParent::StartRedirect(PRUint3
|
|
|
|
nsHttpChannel *httpChan = static_cast<nsHttpChannel *>(mChannel.get());
|
|
nsHttpResponseHead *responseHead = httpChan->GetResponseHead();
|
|
bool result = SendRedirect1Begin(newChannelId,
|
|
IPC::URI(newURI),
|
|
redirectFlags,
|
|
responseHead ? *responseHead
|
|
: nsHttpResponseHead());
|
|
- if (!result) {
|
|
- // Bug 621446 investigation
|
|
- mSentRedirect1BeginFailed = true;
|
|
+ if (!result)
|
|
return NS_BINDING_ABORTED;
|
|
- }
|
|
-
|
|
- // Bug 621446 investigation
|
|
- mSentRedirect1Begin = true;
|
|
|
|
// Result is handled in RecvRedirect2Verify above
|
|
|
|
mRedirectChannel = newChannel;
|
|
mRedirectCallback = callback;
|
|
return NS_OK;
|
|
}
|
|
|
|
diff --git a/netwerk/protocol/http/HttpChannelParent.h b/netwerk/protocol/http/HttpChannelParent.h
|
|
--- a/netwerk/protocol/http/HttpChannelParent.h
|
|
+++ b/netwerk/protocol/http/HttpChannelParent.h
|
|
@@ -128,18 +128,14 @@ private:
|
|
nsCOMPtr<nsIChannel> mRedirectChannel;
|
|
nsCOMPtr<nsIAsyncVerifyRedirectCallback> mRedirectCallback;
|
|
|
|
// state for combining OnStatus/OnProgress with OnDataAvailable
|
|
// into one IPDL call to child.
|
|
nsresult mStoredStatus;
|
|
PRUint64 mStoredProgress;
|
|
PRUint64 mStoredProgressMax;
|
|
-
|
|
- bool mSentRedirect1Begin : 1;
|
|
- bool mSentRedirect1BeginFailed : 1;
|
|
- bool mReceivedRedirect2Verify : 1;
|
|
};
|
|
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
#endif // mozilla_net_HttpChannelParent_h
|