# HG changeset patch
# User Gavin Sharp <gavin@gavinsharp.com>
# Date 1258996898 18000
# Node ID d62b8c14f09a413a7fada0890e558b61d7edb467
# Parent  6f5a53418745c844ddc7c195fea108b1e6c1248e
Bug 529952: fix error console spew on gmail due to bad assumption about nsIRequests all being nsIChannels

diff --git a/browser/base/content/browser.js b/browser/base/content/browser.js
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -4321,19 +4321,18 @@ var XULBrowserWindow = {
 var TabsProgressListener = {
   onProgressChange: function (aBrowser, aWebProgress, aRequest,
                               aCurSelfProgress, aMaxSelfProgress,
                               aCurTotalProgress, aMaxTotalProgress) {
   },
 
   onStateChange: function (aBrowser, aWebProgress, aRequest, aStateFlags, aStatus) {
 #ifdef MOZ_CRASHREPORTER
-    if (!aRequest.URI)
-      aRequest.QueryInterface(Ci.nsIChannel);
-    if (aStateFlags & Ci.nsIWebProgressListener.STATE_START &&
+    if (aRequest instanceof Ci.nsIChannel &&
+        aStateFlags & Ci.nsIWebProgressListener.STATE_START &&
         aStateFlags & Ci.nsIWebProgressListener.STATE_IS_DOCUMENT) {
       gCrashReporter.annotateCrashReport("URL", aRequest.URI.spec);
     }
 #endif
   },
 
   onLocationChange: function (aBrowser, aWebProgress, aRequest, aLocationURI) {
     // Filter out any sub-frame loads
