Index: mozilla/modules/libjar/nsJARURI.cpp =================================================================== RCS file: /cvsroot/mozilla/modules/libjar/nsJARURI.cpp,v retrieving revision 1.54 diff -up -r1.54 mozilla/modules/libjar/nsJARURI.cpp --- mozilla/modules/libjar/nsJARURI.cpp +++ mozilla/modules/libjar/nsJARURI.cpp @@ -268,18 +268,22 @@ nsJARURI::SetSpecWithBase(const nsACStri if (!aBaseURL) return NS_ERROR_MALFORMED_URI; - nsRefPtr otherJAR; - aBaseURL->QueryInterface(NS_GET_IID(nsJARURI), getter_AddRefs(otherJAR)); + nsCOMPtr otherJAR(do_QueryInterface(aBaseURL)); NS_ENSURE_TRUE(otherJAR, NS_NOINTERFACE); - mJARFile = otherJAR->mJARFile; + rv = otherJAR->GetJARFile(getter_AddRefs(mJARFile)); + /* we're not checking this! */ + + nsCString JAREntry; + rv = otherJAR->GetJAREntry(JAREntry); + /* we're not checking this! */ nsCOMPtr entry(do_CreateInstance(NS_STANDARDURL_CONTRACTID)); if (!entry) return NS_ERROR_OUT_OF_MEMORY; rv = entry->Init(nsIStandardURL::URLTYPE_NO_AUTHORITY, -1, - aSpec, mCharsetHint.get(), otherJAR->mJAREntry); + aSpec, mCharsetHint.get(), JAREntry); if (NS_FAILED(rv)) return rv; @@ -465,8 +469,7 @@ nsJARURI::Equals(nsIURI *other, PRBool * if (other == nsnull) return NS_OK; // not equal - nsRefPtr otherJAR; - other->QueryInterface(NS_GET_IID(nsJARURI), getter_AddRefs(otherJAR)); + nsRefPtr otherJAR(do_QueryInterface(other)); if (!otherJAR) return NS_OK; // not equal