Closed Bug 636406 Opened 13 years ago Closed 10 years ago

Loading Gmail hangs indefinite in AIX for Firefox-3.5.x

Categories

(Core :: JavaScript Engine, defect, P3)

1.9.2 Branch
PowerPC
AIX
defect

Tracking

()

RESOLVED WONTFIX

People

(Reporter: sehgal.himanshu01, Unassigned)

References

()

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ;ShopperReports
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.13) Gecko/20101203 Firefox/3.5.8 ;ShopperReports

when try opening gmail account in AIX for Firefox-3.5.x, Gmail hangs indefinitly.

OS version : AIX 5.3 and above
Firefox version used : Firefox-3.5.x
Used 64bit rpms for build

I have the debug build for Firefox-3.5.8 (64bit) and tried running it to get a better idea of the problem. I am also posting the debug error messages below :

WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file /home/firefo
x/ffox358_debug/mozilla/layout/base/nsPresContext.h, line 1026
WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file /home/firefo
x/ffox358_debug/mozilla/layout/base/nsPresContext.h, line 1026
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/sr
c/nsXMLHttpRequest.cpp, line 2616
JavaScript error: https://mail.google.com/mail/?ui=2&view=js&name=main,tlist&ver=nMV9SDQdWfY.en.&am=!062G0DnwSUP7BeVh4f8xI
sM1NgFWTRh3b2_28yWM3o9blMdWuid8yDJB5Q&fri, line 1120: this.Za is undefined
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/sr
c/nsXMLHttpRequest.cpp, line 2616
--DOMWINDOW == 29 (111adfd08) [serial = 28] [outer = 111ab4a90] [url = https://www.google.com/accounts/ServiceLoginAuth]
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/sr
c/nsXMLHttpRequest.cpp, line 2616
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/sr
c/nsXMLHttpRequest.cpp, line 2616
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/sr
c/nsXMLHttpRequest.cpp, line 2616
--WEBSHELL 110bbf170 == 14
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/sr
c/nsXMLHttpRequest.cpp, line 2616
--DOMWINDOW == 28 (1111aa888) [serial = 7] [outer = 110bbfd30] [url = about:blank]
--DOMWINDOW == 27 (110bbfd88) [serial = 5] [outer = 0] [url = about:blank]
--DOMWINDOW == 26 (111777208) [serial = 14] [outer = 110da6810] [url = http://en-us.www.mozilla.com/en-US/firefox/3.5.8/wh
atsnew/]
--WEBSHELL 110da5ad0 == 13
--DOMWINDOW == 25 (110845b08) [serial = 2] [outer = 0] [url = chrome://browser/content/browser.xul]
--DOMWINDOW == 24 (110852688) [serial = 3] [outer = 0] [url = about:blank]
--DOMWINDOW == 23 (110da6868) [serial = 6] [outer = 0] [url = http://en-us.www.mozilla.com/en-US/firefox/3.5.8/whatsnew/]
--WEBSHELL 11083a3f0 == 12
JavaScript error: https://mail.google.com/mail/?ui=2&view=js&name=main,tlist&ver=nMV9SDQdWfY.en.&am=!062G0DnwSUP7BeVh4f8xI
sM1NgFWTRh3b2_28yWM3o9blMdWuid8yDJB5Q&fri, line 1120: this.Za is undefined


We are able to open the Gmail in the basic HTML view but it does not work in the standard view.




Reproducible: Always

Steps to Reproduce:
1. Build Firefox-3.5.x on AIX (v5.3 OR above) using 64bit rpms.
2. launch gmail.com from the Firefox window
3. login to your gmail account. Firefox hangs while loading ( sometimes though you are able to login but individual mail does not open )
Actual Results:  
User should be able to login gmail and run through his/her mails in the mailbox.

Expected Results:  
The loading page for Firefox hangs indefinitly in AIX and sometimes load but does not allow to open individual mails.
OS: Other → AIX
Priority: -- → P3
Version: unspecified → 3.5 Branch
I can confirm this bug, I also had one user reporting exactly the same problem  for my 32bit builds. It is also 100% reproducable with my SeaMonkey 2.0.x builds and also Firefox 3.6.13.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Version: 3.5 Branch → unspecified
IBM's Firefox 3.5.8 for 64bit AIX does NOT contain the fix for bug# 501881.
Backing out the patch of bug# 501881 didn't help against this javascript error/deadlock. It was my first guess, as the user reported a earlier SeaMonkey version (without the mentioned patch) as working.
I cannot reproduce it within my environment. No gmail.com accounts in Germany.
Adding some additional comment while debugging the issue :

NS_ENSURE_SUCCESS fails here :

WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8007000E: file /home/firefox/ffox358_debug/mozilla/content/base/src/nsXMLHttpRequest.cpp, line 2616

Source at line before NS_ENSURE_SUCCESS says

rv = converter->ConvertToInputStream(serial,
                                           getter_AddRefs(postDataStream));

where, dbx to serial and postDataStream give the following values :

(dbx) p postDataStream
{
    nsCOMPtr_base::mRawPtr = (nil)

}

(dbx) p serial
{
    nsAString_internal::mData = 0x00000001103098d0
    nsAString_internal::mLength = 0
    nsAString_internal::mFlags = 9


}

which seems to be nil for  postDataStream and " Length = 0 " for serial.


Not pretty sure what causes these values to be nil and thus causes NS_ENSURE_SUCCESS to fail. Not even sure this could be the exact issue. 

Any help ?
OS: AIX → Mac OS X
Backing out the changes for defect bug# 501881 does not work. It causes firefox to fail silently.
Firefox is looping around while sending request to the gmail web server for the gmail page.

The failing method is nsXMLHttpRequest::Send, while in the file "/mozilla/content/base/src/nsXMLHttpRequest.cpp".

The method in the loop which fails is :
rv = converter->ConvertToInputStream(serial,
                                           getter_AddRefs(postDataStream));

and when we move inside the method " ConvertToInputStream ", we find method     " ConvertToByteArray "  to return the wrong rv value.

The method definition is

NS_IMETHODIMP
nsScriptableUnicodeConverter::ConvertToByteArray(const nsAString& aString,
                                                 PRUint32* aLen,
                                                 PRUint8** _aData)

{
  char* data;
  PRInt32 len;
  nsresult rv = ConvertFromUnicodeWithLength(aString, &len, &data);
  if (NS_FAILED(rv))
    return rv;
  nsXPIDLCString str;
  str.Adopt(data, len); // NOTE: This uses the XPIDLCString as a byte array

  rv = FinishWithLength(&data, &len);
  if (NS_FAILED(rv))
    return rv;

  str.Append(data, len);
  nsMemory::Free(data);
  // NOTE: this being a byte array, it needs no null termination
  *_aData = reinterpret_cast<PRUint8*>
                            (nsMemory::Clone(str.get(), str.Length()));
  if (!*_aData)
    return NS_ERROR_OUT_OF_MEMORY;
  *aLen = str.Length();
  return NS_OK;
}


The error code we get is " NS_ERROR_OUT_OF_MEMORY " when we return from this method.

The failing method here is 

*_aData = reinterpret_cast<PRUint8*>
                            (nsMemory::Clone(str.get(), str.Length()));


Not sure what may be causing the failure.
Branches confirmed affected: moz-191, moz-192
moz-20 branch is most probably affected,too. Not firefox 4.0.x on AIX so far untill today.
Assignee: nobody → general
Component: General → JavaScript Engine
OS: Mac OS X → AIX
Product: Firefox → Core
QA Contact: general → general
Version: unspecified → 1.9.2 Branch
Mozilla no longer supports AIX, but patches are accepted. :)
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.