Closed
Bug 409012
Opened 17 years ago
Closed 17 years ago
Firefox - trunk build Version 3.0b3pre is crashing on AIX [@ strlen.strlen ] nsMozIconURI::GetIconState
Categories
(Core :: Graphics: ImageLib, defect)
Tracking
()
RESOLVED
FIXED
mozilla1.9beta3
People
(Reporter: shailen.n.jain, Assigned: shailen.n.jain)
Details
(Keywords: crash)
Crash Data
Attachments
(1 file)
740 bytes,
patch
|
roc
:
review+
roc
:
superreview+
roc
:
approval1.9+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11 Below is the stack trace for the core generated Segmentation fault in . at 0x377c ($t1) 0x000000000000377c warning: Unable to access address 0x377c from core (dbx) where warning: Unable to access address 0x377c from core warning: Unable to access address 0x377c from core warning: Unable to access address 0x3778 from core warning: Unable to access address 0x3778 from core warning: Unable to access address 0x377c from core warning: Unable to access address 0x377c from core warning: Unable to access address 0x3778 from core warning: Unable to access address 0x3778 from core warning: Unable to access address 0x377c from core .() at 0x377c pthread_kill(??, ??) at 0x900000000252c14 _p_raise(??) at 0x900000000252648 unnamed block $b42120, line 206 in "nsProfileLock.cpp" nsProfileLock::FatalSignalHandler(int)(signo = 11), line 206 in "nsProfileLock.cpp" strlen.strlen() at 0x90000000001ba7c nsCRTGlue.strlen(const char*)(0x600000000), line 111 in "string.h" nsXPComInit.length(const char*)(0x600000000), line 611 in "nsCharTraits.h" nsSubstring.Assign(const char*,unsigned int)(this = 0x0fffffffffff8800, data = warning: Unable to access address 0x600000000 from core (invalid char ptr (0x0000000600000000)), length = 4294967295), line 336 in "nsTSubstring.cpp" NS_CStringSetData_P(aStr = &(...), aData = warning: Unable to access address 0x600000000 from core (invalid char ptr (0x0000000600000000)), aDataLength = 4294967295), line 311 in "nsXPCOMStrings.cpp" NS_CStringSetData(aStr = &(...), aBuf = warning: Unable to access address 0x600000000 from core (invalid char ptr (0x0000000600000000)), aCount = 4294967295), line 497 in "nsXPComStub.cpp" nsIconURI.Assign(const char*,unsigned int)(0xfffffffffff8800, 0x600000000, 0xffffffffffffffff), line 414 in "nsStringAPI.h" nsIconURI.operator=(const char*)(0xfffffffffff8800, 0x600000000), line 426 in "nsStringAPI.h" nsMozIconURI::GetIconState(nsACString&)(this = 0x0000000110aad6b0, aState = &(...)), line 572 in "nsIconURI.cpp" nsIconChannel::Init(nsIURI*)(this = 0x0000000110ad2130, aURI = 0x0000000110aad6b0), line 481 in "nsIconChannel.cpp" nsIconProtocolHandler::NewChannel(nsIURI*,nsIChannel**)(this = 0x0000000110a11530, url = 0x0000000110aad6b0, result = 0x0fffffffffff8c70), line 115 in "nsIconProtocolHandler.cpp" nsIOService::NewChannelFromURI(nsIURI*,nsIChannel**)(this = 0x000000011013aaf0, aURI = 0x0000000110aad6b0, result = 0x0fffffffffff8c70), line 571 in "nsIOService.cpp" unnamed block $b32788, line 176 in "nsNetUtil.h" imgLoader.NS_NewChannel(nsIChannel**,nsIURI*,nsIIOService*,nsILoadGroup*,nsIInterfaceRequestor*,unsigned int)(0xfffffffffff9100, 0x110aad6b0, 0x11013aaf0, 0x0, 0x11096b7d0, 0x0), line 176 in "nsNetUtil.h" NewImageChannel(nsIChannel**,nsIURI*,nsIURI*,nsIURI*,nsILoadGroup*,unsigned int)(aResult = 0x0fffffffffff9100, aURI = 0x0000000110aad6b0, aInitialDocumentURI = 0x0000000110957e70, aReferringURI = 0x0000000110a94e90, aLoadGroup = 0x000000011096b5f0, aLoadFlags = 0), line 205 in "imgLoader.cpp" unnamed block $b32811, line 468 in "imgLoader.cpp" imgLoader::LoadImage(nsIURI*,nsIURI*,nsIURI*,nsILoadGroup*,imgIDecoderObserver*,nsISupports*,unsigned int,nsISupports*,imgIRequest*,imgIRequest**)(this = 0x0000000110326810, aURI = 0x0000000110aad6b0, aInitialDocumentURI = 0x0000000110957e70, aReferrerURI = 0x0000000110a94e90, aLoadGroup = 0x000000011096b5f0, aObserver = (nil), aCX = 0x00000001100c2e90, aLoadFlags = 0, cacheKey = (nil), aRequest = (nil), _retval = 0x0000000110aa7998), line 468 in "imgLoader.cpp" nsContentUtils::LoadImage(nsIURI*,nsIDocument*,nsIPrincipal*,nsIURI*,imgIDecoderObserver*,int,imgIRequest**)(aURI = 0x0000000110aad6b0, aLoadingDocument = 0x00000001100c2e90, aLoadingPrincipal = 0x0000000110a96cd0, aReferrer = 0x0000000110a94e90, aObserver = (nil), aLoadFlags = 0, aRequest = 0x0000000110aa7998), line 2195 in "nsContentUtils.cpp" nsCSSValue::Image::Image(nsIURI*,nsStringBuffer*,nsIURI*,nsIPrincipal*,nsIDocument*)(this = 0x0000000110aa7970, aURI = 0x0000000110aad6b0, aString = 0x0000000110aad750, aReferrer = 0x0000000110a94e90, aOriginPrincipal = 0x0000000110a96cd0, aDocument = 0x00000001100c2e90), line 473 in "nsCSSValue.cpp" nsCSSValue::StartImageLoad(nsIDocument*) const(this = 0x0000000110aad8a8, aDocument = 0x00000001100c2e90), line 380 in "nsCSSValue.cpp" unnamed block $b15014, line 212 in "nsCSSDataBlock.cpp" unnamed block $b15013, line 212 in "nsCSSDataBlock.cpp" unnamed block $b15012, line 212 in "nsCSSDataBlock.cpp" unnamed block $b15011, line 212 in "nsCSSDataBlock.cpp" nsCSSCompressedDataBlock::MapRuleInfoInto(nsRuleData*) const(this = 0x0000000110aad890, aRuleData = 0x0fffffffffff99a8), line 212 in "nsCSSDataBlock.cpp" nsCSSDeclaration::MapRuleInfoInto(nsRuleData*) const(this = 0x0000000110aad650, aRuleData = 0x0fffffffffff99a8), line 94 in "nsCSSDeclaration.h" CSSStyleRuleImpl::MapRuleInfoInto(nsRuleData*)(this = 0x0000000110aad8d0, aRuleData = 0x0fffffffffff99a8), line 1399 in "nsCSSStyleRule.cpp" unnamed block $b15858, line 1369 in "nsRuleNode.cpp" WalkRuleTree(nsStyleStructID,nsStyleContext*,nsRuleData*,nsCSSStruct*)(this = 0x0000000110aa63d0, aSID = eStyleStruct_List, aContext = 0x0000000110aa6488, aRuleData = 0x0fffffffffff99a8, aSpecificData = 0x0fffffffffff9938), line 1369 in "nsRuleNode.cpp" GetListData(nsStyleContext*)(this = 0x0000000110aa63d0, aContext = 0x0000000110aa6488), line 1212 in "nsRuleNode.cpp" GetStyleList(nsStyleContext*,int)(this = 0x0000000110aa63d0, aContext = 0x0000000110aa6488, aComputeData = 1), line 81 in "nsStyleStructList.h" nsStyleContext::GetStyleList()(this = 0x0000000110aa6488), line 81 in "nsStyleStructList.h" unnamed block $b15903, line 442 in "nsStyleContext.cpp" unnamed block $b15902, line 442 in "nsStyleContext.cpp" CalcStyleDifference(nsStyleContext*)(this = 0x0000000110aa5b50, aOther = 0x0000000110aa6488), line 442 in "nsStyleContext.cpp" CaptureChange(nsStyleContext*,nsStyleContext*,nsIFrame*,nsIContent*,nsStyleChangeList*,nsChangeHint,nsChangeHint)(aOldContext = 0x0000000110aa5b50, aNewContext = 0x0000000110aa6488, aFrame = 0x0000000110aa60a8, aContent = 0x00000001109c3500, aChangeList = 0x0fffffffffffa778, aMinChange = nsChangeHint_RepaintFrame, aChangeToAssume = 0), line 1058 in "nsFrameManager.cpp" unnamed block $b12383, line 1194 in "nsFrameManager.cpp" unnamed block $b12380, line 1194 in "nsFrameManager.cpp" nsFrameManager::ReResolveStyleContext(nsPresContext*,nsIFrame*,nsIContent*,nsStyleChangeList*,nsChangeHint)(this = 0x00000001109c7e68, aPresContext = 0x00000001109c62d0, aFrame = 0x0000000110aa60a8, aParentContent = 0x00000001109c3380, aChangeList = 0x0fffffffffffa778, aMinChange = nsChangeHint_RepaintFrame), line 1194 in "nsFrameManager.cpp" unnamed block $b12393, line 1403 in "nsFrameManager.cpp" unnamed block $b12392, line 1403 in "nsFrameManager.cpp" unnamed block $b12380, line 1403 in "nsFrameManager.cpp" nsFrameManager::ReResolveStyleContext(nsPresContext*,nsIFrame*,nsIContent*,nsStyleChangeList*,nsChangeHint)(this = 0x00000001109c7e68, aPresContext = 0x00000001109c62d0, aFrame = 0x0000000110aa5fa0, aParentContent = 0x00000001109c1858, aChangeList = 0x0fffffffffffa778, aMinChange = nsChangeHint_RepaintFrame), line 1403 in "nsFrameManager.cpp" unnamed block $b12393, line 1403 in "nsFrameManager.cpp" unnamed block $b12392, line 1403 in "nsFrameManager.cpp" unnamed block $b12380, line 1403 in "nsFrameManager.cpp" nsFrameManager::ReResolveStyleContext(nsPresContext*,nsIFrame*,nsIContent*,nsStyleChangeList*,nsChangeHint)(this = 0x00000001109c7e68, aPresContext = 0x00000001109c62d0, aFrame = 0x0000000110aa5f08, aParentContent = (nil), aChangeList = 0x0fffffffffffa778, aMinChange = nsChangeHint_RepaintFrame), line 1403 in "nsFrameManager.cpp" unnamed block $b12396, line 1465 in "nsFrameManager.cpp" nsFrameManager::ComputeStyleChangeFor(nsIFrame*,nsStyleChangeList*,nsChangeHint)(this = 0x00000001109c7e68, aFrame = 0x0000000110aa5f08, aChangeList = 0x0fffffffffffa778, aMinChange = nsChangeHint_RepaintFrame), line 1465 in "nsFrameManager.cpp" unnamed block $b12011, line 10152 in "nsCSSFrameConstructor.cpp" RestyleElement(nsIContent*,nsIFrame*,nsChangeHint)(this = 0x00000001109c95f0, aContent = 0x00000001109c1858, aPrimaryFrame = 0x0000000110aa5f08, aMinHint = nsChangeHint_RepaintFrame), line 10152 in "nsCSSFrameConstructor.cpp" ProcessOneRestyle(nsIContent*,nsReStyleHint,nsChangeHint)(this = 0x00000001109c95f0, aContent = 0x00000001109c1858, aRestyleHint = eReStyle_Self, aChangeHint = nsChangeHint_RepaintFrame), line 13243 in "nsCSSFrameConstructor.cpp" unnamed block $b12014, line 13296 in "nsCSSFrameConstructor.cpp" ProcessPendingRestyles()(this = 0x00000001109c95f0), line 13296 in "nsCSSFrameConstructor.cpp" PresShell::InitialReflow(int,int)(this = 0x00000001109c7e30, aWidth = 60, aHeight = 60), line 2413 in "nsPresShell.cpp" unnamed block $b23995, line 1938 in "nsXULDocument.cpp" nsXULDocument::StartLayout()(this = 0x00000001100c2e90), line 1938 in "nsXULDocument.cpp" unnamed block $b24001, line 3076 in "nsXULDocument.cpp" nsXULDocument::DoneWalking()(this = 0x00000001100c2e90), line 3076 in "nsXULDocument.cpp" nsXULDocument::ResumeWalk()(this = 0x00000001100c2e90), line 3020 in "nsXULDocument.cpp" nsXULDocument::OnStreamComplete(nsIStreamLoader*,nsISupports*,unsigned int,unsigned int,const unsigned char*)(this = 0x00000001100c2e90, aLoader = 0x00000001109e00f0, context = (nil), aStatus = 0, stringLen = 8350, string = "function closeWindow(aClose, aPromptFunction)\n{\n var windowCount = 0;\n var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]\n .getService(Components.interfaces.nsIWindowMediator);\n var e = wm.getEnumerator(null);\n \n while (e.hasMoreElements()) {\n var w = e.getNext();\n if (++windowCount == 2) \n break;\n }\n\n//@line 16 "/home/sjain/sb/tinderbox/AIX_5.2_Clobber/mozilla/toolkit/content/globalOverlay.js"\n // If we're down to the last window and someone tries to shut down, check to make sure we can!\n if (windowCount == 1 && !canQuitApplication())\n return false;\n else if (windowCount != 1)\n//@line 21 "/home/sjain/sb/tinderbox/AIX_5.2_Clobber/mozilla/toolkit/content/globalOverlay.js"\n if (typeof(aPromptFunction) == "function" && !aPromptFunction())\n return false;\n\n if (aClose) \n window.close();\n \n return true;\n}\n\nfunction canQuitApplication()\n{\n var os = Components.classes["@mozilla.org/observer-service;1"]\n .getService(Components.interfaces.nsIObserverService);\n if (!os) return true;\n \n try {\n var cancelQuit = Components.classes["@mozilla.org/supports-PRBool;1"]\n .createInstance(Components.interfaces.nsISupportsPRBool);\n os.notifyObservers(cancelQuit, "quit-application-requested", null);\n \n // Something aborted the quit process. \n if (cancelQuit.data)\n return false;\n }\n catch (ex) { }\n return true;\n}\n\nfunction goQuitApplication()\n{\n if (!canQuitApplication())\n return false;\n\n var appStartup = Components.classes['@mozilla.org/toolkit/app-startup;1'].\n getService(Components.interfaces.nsIAppStartup);\n\n appStartup.quit(Components.interfaces.nsIAppStartup.eAttemptQuit);\n return true;\n}\n\n//\n// Command Updater functions\n//\nfunction goUpdateCommand(aCommand)\n{\n try {\n var controller = top.document.commandDispatcher\n .getControllerForCommand(aCommand);\n\n var enabled = false;\n if (controller)\n enabled = controller.isCommandEnabled(aCommand);\n\n goSetCommandEnabled(aCommand, enabled);\n }\n catch (e) {\n dump("An error occurred updating the " + aCommand + " command\n");\n }\n}\n\nfunction goDoCommand(aCommand)\n{\n try {\n var controller = top.document.commandDispatcher\n .getControllerForCommand(aCommand);\n if (controller && controller.isCommandEnabled(aCommand))\n controller.doCommand(aCommand);\n }\n catch (e) {\n dump("An error occurred executing the " + aCommand + " command\n" + e + "\n");\n }\n}\n\n\nfunction goSetCommandEnabled(aID, aEnabled)\n{\n var node = document.getElementById(aID);\n\n if (node) {\n if (aEnabled)\n node.removeAttribute("disabled");\n else\n node.setAttribute("disabled", "true");\n }\n}\n\nfunction goSetMenuValue(aCommand, aLabelAttribute)\n{\n var commandNode = top.document.getElementById(aCommand);\n if (commandNode) {\n var label = commandNode.getAttribute(aLabelAttribute);\n if (label)\n commandNode.setAttribute("label", label);\n }\n}\n\nfunction goSetAccessKey(aCommand, aValueAttribute)\n{\n var commandNode = top.document.getElementById(aCommand);\n if (commandNode) {\n var value = commandNode.getAttribute(aValueAttribute);\n if (value)\n commandNode.setAttribute("accesskey", value);\n }\n}\n\n// this function is used to inform all the controllers attached to a node that an event has occurred\n// (e.g. the tree controllers need to be informed of blur events so that they can change some of the\n// menu items back to their default values)\nfunction goOnEvent(aNode, aEvent)\n{\n var numControllers = aNode.controllers.getControllerCount();\n var controller;\n\n for (var controllerIndex = 0; controllerIndex < numControllers; controllerIndex++) {\n controller = aNode.controllers.getControllerAt(controllerIndex);\n if (controller)\n controller.onEvent(aEvent);\n }\n}\n\nfunction visitLink(aEvent) {\n var node = aEvent.target;\n while (node.nodeType != Node.ELEMENT_NODE)\n node = node.parentNode;\n var url = node.getAttribute("link");\n if (!url)\n return;\n\n var protocolSvc = Components.classes["@mozilla.org/uriloader/external-protocol-service;1"]\n .getService(Components.interfaces.nsIExternalProtocolService);\n var ioService = Components.classes["@mozilla.org/network/io-service;1"]\n .getService(Components.interfaces.nsIIOService);\n var uri = ioService.newURI(url, null, null);\n\n // if the scheme is not an exposed protocol, then opening this link\n // should be deferred to the system's external protocol handler\n if (protocolSvc.isExposedProtocol(uri.scheme)) {\n var win = window.top;\n if (win instanceof Components.interfaces.nsIDOMChromeWindow) {\n while (win.opener && !win.opener.closed)\n win = win.opener;\n }\n win.open(uri.spec);\n }\n else\n protocolSvc.loadUrl(uri);\n}\n\nfunction isValidLeftClick(aEvent, aName)\n{\n return (aEvent.button == 0 && aEvent.originalTarget.localName == aName);\n}\n\nfunction setTooltipText(aID, aTooltipText)\n{\n var element = document.getElementById(aID);\n if (element)\n element.setAttribute("tooltiptext", aTooltipText);\n}\n\nfunction FillInTooltip ( tipElement )\n{\n var retVal = false;\n var textNode = document.getElementById("TOOLTIP-tooltipText");\n if (textNode) {\n while (textNode.hasChildNodes())\n textNode.removeChild(textNode.firstChild);\n var tipText = tipElement.getAttribute("tooltiptext");\n if (tipText) {\n var node = document.createTextNode(tipText);\n textNode.appendChild(node);\n retVal = true;\n }\n }\n return retVal;\n}\n\n//@line 44 "/home/sjain/sb/tinderbox/AIX_5.2_Clobber/mozilla/toolkit/content/debug.js"\n\nvar gTraceOnAssert = true;\n\n/**\n * This function provides a simple assertion function for JavaScript.\n * If the condition is true, this function will do nothing. If the\n * condition is false, then the message will be printed to the console\n * and an alert will appear showing a stack trace, so that the (alpha\n * or nightly) user can file a bug containing it. For future enhancements, \n * see bugs 330077 and 330078.\n *\n * To suppress the dialogs, you can run with the environment variable\n * XUL_ASSERT_PROMPT set to 0 (if unset, this defaults to 1).\n *\n * @param condition represents the condition that we're asserting to be\n * true when we call this function--should be\n * something that can be evaluated as a boolean.\n * @param message a string to be displayed upon failure of the assertion\n */\n\nfunction NS_ASSERT(condition, message) {\n if (condition)\n return;\n\n var releaseBuild = true;\n var defB = Components.classes["@mozilla.org/preferences-service;1"]\n .getService(Components.interfaces.nsIPrefService)\n .getDefaultBranch(null);\n try {\n switch (defB.getCharPref("app.update.channel")) {\n case "nightly":\n case "beta":\n case "default":\n releaseBuild = false;\n }\n } catch(ex) {}\n\n var caller = arguments.callee.caller;\n var assertionText = "ASSERT: " + message + "\n";\n\n if (releaseBuild) {\n // Just report the error to the console\n Components.utils.reportError(assertionText);\n return;\n }\n\n // Otherwise, dump to stdout and launch an assertion failure dialog\n dump(assertionText);\n\n var stackText = "";\n if (gTraceOnAssert) {\n stackText = "Stack Trace: \n";\n var count = 0;\n while (caller) {\n stackText += count++ + ":" + caller.name + "(";\n for (var i = 0; i < caller.arguments.length; ++i) {\n var arg = caller.arguments[i];\n stackText += arg;\n if (i < caller.arguments.length - 1)\n stackText += ",";\n }\n stackText += ")\n";\n caller = caller.arguments.callee.caller;\n }\n }\n\n var environment = Components.classes["@mozilla.org/process/environment;1"].\n getService(Components.interfaces.nsIEnvironment);\n if (environment.exists("XUL_ASSERT_PROMPT") &&\n !parseInt(environment.get("XUL_ASSERT_PROMPT")))\n return;\n\n var source = null;\n if (this.window)\n source = window;\n var ps = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].\n getService(Components.interfaces.nsIPromptService);\n ps.alert(source, "Assertion Failed", assertionText + stackText);\n}\n"), line 3389 in "nsXULDocument.cpp" nsStreamLoader::OnStopRequest(nsIRequest*,nsISupports*,unsigned int)(this = 0x00000001109e00f0, request = 0x0000000110a027d0, ctxt = (nil), aStatus = 0), line 105 in "nsStreamLoader.cpp" nsJARChannel::OnStopRequest(nsIRequest*,nsISupports*,unsigned int)(this = 0x0000000110a027d0, req = 0x0000000110a02bf0, ctx = (nil), status = 0), line 841 in "nsJARChannel.cpp" nsInputStreamPump::OnStateStop()(this = 0x0000000110a02bf0), line 576 in "nsInputStreamPump.cpp" unnamed block $b37982, line 401 in "nsInputStreamPump.cpp" nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*)(this = 0x0000000110a02bf0, stream = 0x0000000110a02ca8), line 401 in "nsInputStreamPump.cpp" nsInputStreamReadyEvent::Run()(this = 0x0000000110a03110), line 111 in "nsStreamUtils.cpp" ProcessNextEvent(int,int*)(this = 0x0000000110056610, mayWait = 1, result = 0x0fffffffffffc1e8), line 510 in "nsThread.cpp" NS_ProcessNextEvent_P(nsIThread*,int)(thread = 0x0000000110056610, mayWait = 1), line 227 in "nsThreadUtils.cpp" unnamed block $b9743, line 398 in "nsXULWindow.cpp" nsXULWindow::ShowModal()(this = 0x0000000110957fd0), line 398 in "nsXULWindow.cpp" ShowAsModal()(this = 0x0000000110970a90), line 524 in "nsContentTreeOwner.cpp" unnamed block $b10190, line 945 in "nsWindowWatcher.cpp" nsWindowWatcher::OpenWindowJSInternal(nsIDOMWindow*,const char*,const char*,const char*,int,nsIArray*,int,nsIDOMWindow**)(this = 0x00000001106c4d30, aParent = (nil), aUrl = "chrome://global/content/commonDialog.xul", aName = "_blank", aFeatures = "centerscreen,chrome,modal,titlebar", aDialog = 1, argv = 0x000000011051dbd0, aCalledFromJS = 0, _retval = 0x0fffffffffffce90), line 945 in "nsWindowWatcher.cpp" nsWindowWatcher::OpenWindow(nsIDOMWindow*,const char*,const char*,const char*,nsISupports*,nsIDOMWindow**)(this = 0x00000001106c4d30, aParent = (nil), aUrl = "chrome://global/content/commonDialog.xul", aName = "_blank", aFeatures = "centerscreen,chrome,modal,titlebar", aArguments = 0x000000011051d5f0, _retval = 0x0fffffffffffce90), line 418 in "nsWindowWatcher.cpp" nsPromptService::DoDialog(nsIDOMWindow*,nsIDialogParamBlock*,const char*)(this = 0x000000011051c7b0, aParent = (nil), aParamBlock = 0x000000011051d5f0, aChromeURL = "chrome://global/content/commonDialog.xul"), line 844 in "nsPromptService.cpp" nsPromptService::ConfirmEx(nsIDOMWindow*,const unsigned short*,const unsigned short*,unsigned int,const unsigned short*,const unsigned short*,const unsigned short*,const unsigned short*,int*,int*)(this = 0x000000011051c7b0, parent = (nil), dialogTitle = 0x00000001104b18d0, text = 0x000000011051d6b0, buttonFlags = 0, button0Title = 0x00000001104b4170, button1Title = 0x00000001104b1450, button2Title = (nil), checkMsg = (nil), checkValue = 0x000000011051d910, buttonPressed = 0x000000011051d928), line 461 in "nsPromptService.cpp" Reproducible: Always Steps to Reproduce: 1.Build Mozilla Firefox Trunk build on AIX with Gnome 2.12 RPMS of 64 bit version. 2. 3. Actual Results: Firefox crashes Expected Results: Firefox should not crash
Component: General → ImageLib
Product: Firefox → Core
QA Contact: general → imagelib
Summary: Firefox - trunk build Version 3.0b3pre is crashing on AIX → Firefox - trunk build Version 3.0b3pre is crashing on AIX [@ strlen.strlen ] nsMozIconURI::GetIconState
Version: unspecified → Trunk
Looks like the fix for bug# 402742 is causing the crash. Firefox build(version=3.0b3pre) on AIX runs fine if the fix for bug# 402742 is excluded from the build version 3.0b3pre.
It seems the issue is not related to the fix for bug# 402742 but the fix has triggered passing '-1' to the below function in mozilla/modules/libpr0n/decoders/icon/nsIconURI.cpp NS_IMETHODIMP nsMozIconURI::GetIconState(nsACString &aState) { if (mIconState) aState = kStateStrings[mIconState]; else aState.Truncate(); return NS_OK; } and thus ending up in making 'aState' as invalid string. Attaching a patch to rectify the above scenario when '-1' being passed.
Attachment #296519 -
Flags: review?(roc)
Attachment #296519 -
Flags: superreview+
Attachment #296519 -
Flags: review?(roc)
Attachment #296519 -
Flags: review+
Updated•17 years ago
|
Comment 3•17 years ago
|
||
Comment on attachment 296519 [details] [diff] [review] Patch V1 Simple crash fix for AIX.
Attachment #296519 -
Flags: approval1.9?
Attachment #296519 -
Flags: approval1.9? → approval1.9+
Updated•17 years ago
|
Keywords: checkin-needed
Comment 4•17 years ago
|
||
Checking in modules/libpr0n/decoders/icon/nsIconURI.cpp; /cvsroot/mozilla/modules/libpr0n/decoders/icon/nsIconURI.cpp,v <-- nsIconURI.cpp new revision: 1.31; previous revision: 1.30 done
Status: NEW → RESOLVED
Closed: 17 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9 M11
Updated•13 years ago
|
Crash Signature: [@ strlen.strlen ]
You need to log in
before you can comment on or make changes to this bug.
Description
•