Closed Bug 292944 Opened 19 years ago Closed 19 years ago

###!!! ASSERTION: Can't execute uncompiled method: 'mIsCompiled', file r:/mozilla/content/xbl/src/nsXBLProtoImplMethod.cpp, line 270

Categories

(Core :: XBL, defect)

x86
Windows XP
defect
Not set
minor

Tracking

()

RESOLVED FIXED
mozilla1.8beta3

People

(Reporter: timeless, Assigned: bzbarsky)

Details

(Keywords: assertion)

Attachments

(1 file)

reproducable: always
steps:
1. build w/ patch for JS_RUNTIME_SIZE
2.
R:\mozilla\all-i686-pc-cygwin\dist\bin>set JS_RUNTIME_SIZE=13
R:\mozilla\all-i686-pc-cygwin\dist\bin>winEmbed.exe
3. wait

actual results:
Type Manifest File: R:\mozilla\all-i686-pc-cygwin\dist\bin\components\xpti.dat
!!! XPConnect won't warn about Shadowed Members of...
   Window, HTMLInputElement, HTMLDocument, HTMLCollection, Event, ChromeWindow
+++ JavaScript debugging hooks installed.
nsNativeComponentLoader: autoregistering begins.
nsNativeComponentLoader: autoregistering succeeded
nsNativeComponentLoader: registering deferred (0)
nsNativeComponentLoader: autoregistering begins.
nsNativeComponentLoader: autoregistering succeeded
nsNativeComponentLoader: registering deferred (0)
++WEBSHELL == 1
++DOMWINDOW == 1
XPC - Begin deferred Release of 48 nsISupports pointers
XPC - End deferred Releases
XPC - Begin deferred Release of 1 nsISupports pointers
XPC - End deferred Releases
WARNING: String missing from string bundle, file 
r:/mozilla/intl/strres/src/nsStringBundle.cpp, line 288
  'general.useragent.locale' missing from bundle 
chrome://navigator/locale/navigator.properties
WARNING: String missing from string bundle, file 
r:/mozilla/intl/strres/src/nsStringBundle.cpp, line 288
  'intl.accept_languages' missing from bundle 
chrome://navigator/locale/navigator.properties
WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed, file 
r:/mozilla/extensions/cookie/nsPermissionManager.cpp, line 624
WARNING: String missing from string bundle, file 
r:/mozilla/intl/strres/src/nsStringBundle.cpp, line 288
  'DefaultPersonalToolbarFolder' missing from bundle 
chrome://communicator/locale/bookmarks/bookmarks.properties
WARNING: String missing from string bundle, file 
r:/mozilla/intl/strres/src/nsStringBundle.cpp, line 288
  'bookmarks_default_root' missing from bundle 
chrome://communicator/locale/bookmarks/bookmarks.properties
WARNING: String missing from string bundle, file 
r:/mozilla/intl/strres/src/nsStringBundle.cpp, line 288
  'intl.charset.detector' missing from bundle 
chrome://navigator/locale/navigator.properties
###!!! ASSERTION: You are calling CreateInstance "{eaca2576-0d4a-11d3-9d7e-
0060088f9ff7}" when a service for this CID already exists!: 'Error', file 
r:/mozilla/xpcom/components/nsComponentManager.cpp, line 1901
XPC - Begin deferred Release of 0 nsISupports pointers
XPC - End deferred Releases
XPC - Begin deferred Release of 0 nsISupports pointers
XPC - End deferred Releases
WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed, file 
r:/mozilla/content/xbl/src/nsXBLProtoImpl.cpp, line 83
XPC - Begin deferred Release of 0 nsISupports pointers
XPC - End deferred Releases
XPC - Begin deferred Release of 0 nsISupports pointers
XPC - End deferred Releases
WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed, file 
r:/mozilla/content/xbl/src/nsXBLProtoImpl.cpp, line 83
###!!! ASSERTION: Can't execute uncompiled method: 'mIsCompiled', file 
r:/mozilla/content/xbl/src/nsXBLProtoImplMethod.cpp, line 270
Break: at file r:/mozilla/content/xbl/src/nsXBLProtoImplMethod.cpp, line 270

-	this	0x01864778	nsXBLProtoImplAnonymousMethod * const
\-	nsXBLProtoImplMethod	{mUncompiledMethod=0x018647b8 
{mParameters=0x00000000 {mNext=??? mName=??? } mLastParameter=0x00000000 
{mNext=??? mName=??? } mBodyText={mText=0x018647f8 "
 =        if (navigator.platform.indexOf("Mac") != -1)
 =          this.initScrollbar();
 =      " mLineNumber=37 } } mJSMethodObject=0x018647b8 {map=0x00000000 
{nrefs=??? ops=??? nslots=??? ...} slots=0x00000000 } mIsCompiled=0 }
	nsXBLProtoImplMethod
 |+	nsXBLProtoImplMember	{mNext=0x01864960 {mUncompiledMethod=0x01864ae0 
{mParameters=0x00000000 {mNext=??? mName=??? } mLastParameter=0x00000000 
{mNext=??? mName=??? } mBodyText={mText=0x01864b20 mLineNumber=43 } } 
mJSMethodObject=0x01864ae0 {map=0x00000000 {nrefs=??? ops=??? nslots=??? ...} 
slots=0x00000000 } mIsCompiled=0 } mName=0x0184e020 "" 
gJSRuntimeService=0x00000000 ...}	nsXBLProtoImplMember
 |-	mUncompiledMethod	0x018647b8 {mParameters=0x00000000 {mNext=??? 
mName=??? } mLastParameter=0x00000000 {mNext=??? mName=??? } mBodyText=
{mText=0x018647f8 "
 ==        if (navigator.platform.indexOf("Mac") != -1)
 ==          this.initScrollbar();
 ==      " mLineNumber=37 } }	nsXBLUncompiledMethod *
 ||+	mParameters	0x00000000 {mNext=??? mName=??? }	nsXBLParameter *
 ||+	mLastParameter	0x00000000 {mNext=??? mName=??? }	nsXBLParameter *
 ||+	mBodyText	{mText=0x018647f8 "
 ==        if (navigator.platform.indexOf("Mac") != -1)
 ==          this.initScrollbar();
 ==      " mLineNumber=37 }	nsXBLTextWithLineNumber
 |\+	mJSMethodObject	0x018647b8 {map=0x00000000 {nrefs=??? ops=??? 
nslots=??? ...} slots=0x00000000 }	JSObject *
 \	mIsCompiled	0	int

 	ntdll.dll!_DbgBreakPoint@0() 	
 	xpcom_core.dll!nsDebugImpl::Break(const char * aFile=0x01f58d38, int 
aLine=270)  Line 385	C++
 	xpcom_core.dll!nsDebugImpl::Assertion(const char * aStr=0x01f58d78, 
const char * aExpr=0x01f58d6c, const char * aFile=0x01f58d38, int aLine=270)  
Line 301	C++
 	xpcom_core.dll!nsDebug::Assertion(const char * aStr=0x01f58d78, const 
char * aExpr=0x01f58d6c, const char * aFile=0x01f58d38, int aLine=270)  Line 109
	C++
>	gklayout.dll!nsXBLProtoImplAnonymousMethod::Execute(nsIContent * 
aBoundElement=0x018516a0)  Line 270 + 0x23	C++
 	gklayout.dll!nsXBLPrototypeBinding::BindingAttached(nsIContent * 
aBoundElement=0x018516a0)  Line 390 + 0x12	C++
 	gklayout.dll!nsXBLBinding::ExecuteAttachedHandler()  Line 769	C++
 	gklayout.dll!nsBindingManager::ProcessAttachedQueue()  Line 761	C++
 	gklayout.dll!nsCSSFrameConstructor::ContentInserted(nsIContent * 
aContainer=0x00000000, nsIFrame * aContainerFrame=0x00000000, nsIContent * 
aChild=0x01765d68, int aIndexInContainer=0, nsILayoutHistoryState * 
aFrameState=0x00000000, int aInReinsertContent=0)  Line 8992	C++
 	gklayout.dll!PresShell::InitialReflow(int aWidth=9000, int 
aHeight=4680)  Line 2808	C++
 	gklayout.dll!nsContentSink::StartLayout(int aIsFrameset=0)  Line 930
	C++
 	gklayout.dll!HTMLContentSink::StartLayout()  Line 3586	C++
 	gklayout.dll!HTMLContentSink::OpenBody(const nsIParserNode & aNode=
{...})  Line 2700	C++
 	gkparser.dll!CNavDTD::OpenBody(const nsCParserNode * aNode=0x01848388)  
Line 3038 + 0x1f	C++
 	gkparser.dll!CNavDTD::OpenContainer(const nsCParserNode * 
aNode=0x01848388, nsHTMLTag aTag=eHTMLTag_body, int aClosedByStartTag=1, 
nsEntryStack * aStyleStack=0x00000000)  Line 3267 + 0xc	C++
 	gkparser.dll!CNavDTD::HandleDefaultStartToken(CToken * 
aToken=0x01784a18, nsHTMLTag aChildTag=eHTMLTag_body, nsCParserNode * 
aNode=0x01848388)  Line 1332 + 0x14	C++
 	gkparser.dll!CNavDTD::HandleStartToken(CToken * aToken=0x01784a18)  
Line 1711 + 0x14	C++
 	gkparser.dll!CNavDTD::HandleToken(CToken * aToken=0x01784a18, nsIParser 
* aParser=0x0175cb18)  Line 954 + 0xc	C++
 	gkparser.dll!CNavDTD::BuildModel(nsIParser * aParser=0x0175cb18, 
nsITokenizer * aTokenizer=0x017f2f98, nsITokenObserver * anObserver=0x00000000, 
nsIContentSink * aSink=0x01761ed0)  Line 461 + 0x14	C++
 	gkparser.dll!nsParser::BuildModel()  Line 2075 + 0x22	C++
 	gkparser.dll!nsParser::ResumeParse(int allowIteration=1, int 
aIsFinalChunk=1, int aCanInterrupt=1)  Line 1942 + 0xc	C++
 	gkparser.dll!nsParser::ContinueInterruptedParsing()  Line 1451 + 0x13
	C++
 	gkparser.dll!nsParser::ContinueParsing()  Line 1433	C++
 	gklayout.dll!CSSLoaderImpl::SheetComplete(SheetLoadData * 
aLoadData=0x0183c538, int aSucceeded=1)  Line 1452	C++
 	gklayout.dll!CSSLoaderImpl::ParseSheet(nsIUnicharInputStream * 
aStream=0x01700b20, SheetLoadData * aLoadData=0x0183c538, int & aCompleted=1)  
Line 1387	C++
 	gklayout.dll!SheetLoadData::OnStreamComplete(nsIUnicharStreamLoader * 
aLoader=0x0183ce58, nsISupports * aContext=0x00000000, unsigned int aStatus=0, 
nsIUnicharInputStream * aDataStream=0x01700b20)  Line 806 + 0x17	C++
 	necko.dll!nsUnicharStreamLoader::OnStopRequest(nsIRequest * 
request=0x0183c5f0, nsISupports * ctxt=0x00000000, unsigned int aStatus=0)  
Line 196	C++
 	necko.dll!nsStreamListenerTee::OnStopRequest(nsIRequest * 
request=0x0183c5f0, nsISupports * context=0x00000000, unsigned int status=0)  
Line 66	C++
 	necko.dll!nsHttpChannel::OnStopRequest(nsIRequest * request=0x0183d898, 
nsISupports * ctxt=0x00000000, unsigned int status=0)  Line 3825	C++
 	necko.dll!nsInputStreamPump::OnStateStop()  Line 507	C++
 	necko.dll!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream * 
stream=0x0183d640)  Line 343 + 0xb	C++
 	xpcom_core.dll!nsInputStreamReadyEvent::EventHandler(PLEvent * 
plevent=0x01839f9c)  Line 120	C++
 	xpcom_core.dll!PL_HandleEvent(PLEvent * self=0x01839f9c)  Line 698 + 0xa
	C
 	xpcom_core.dll!PL_ProcessPendingEvents(PLEventQueue * self=0x00b24a48)  
Line 633 + 0x9	C
 	xpcom_core.dll!_md_EventReceiverProc(HWND__ * hwnd=0x00db0cc4, unsigned 
int uMsg=49875, unsigned int wParam=0, long lParam=11684424)  Line 1435 + 0x9
	C
 	user32.dll!77d48734() 	
 	user32.dll!77d48816() 	
 	user32.dll!77d4ec03() 	
 	user32.dll!77d489cd() 	
 	user32.dll!77d51091() 	
 	user32.dll!77d496c7() 	
 	winEmbed.exe!AppCallbacks::RunEventLoop(int & aRunCondition=1)  Line 
1198	C++
 	winEmbed.exe!main(int argc=1, char * * argv=0x003d9668)  Line 188 + 0x9
	C++
 	winEmbed.exe!mainCRTStartup()  Line 398 + 0x11	C
 	kernel32.dll!_BaseProcessStart@4()  + 0x23
fwiw, this assertion only fires twice loading the default winembed homepage 
http://www.mozilla.org/projects/minimo/ :)
Attached patch Proposed patchSplinter Review
Timeless, could you test this?
Comment on attachment 182748 [details] [diff] [review]
Proposed patch

This is the right thing no matter what, even if it doesn't fix this bug.  If
implementation install failed, the constructor may not have been compiled and
we shouldn't return a binding...
Attachment #182748 - Flags: superreview?(jst)
Attachment #182748 - Flags: review?(jst)
Comment on attachment 182748 [details] [diff] [review]
Proposed patch

r+sr=jst
Attachment #182748 - Flags: superreview?(jst)
Attachment #182748 - Flags: superreview+
Attachment #182748 - Flags: review?(jst)
Attachment #182748 - Flags: review+
Comment on attachment 182748 [details] [diff] [review]
Proposed patch

Requesting 1.8b3 approval.  This just makes sure to propagate our error results
so we don't try to call things that don't exist on out-of-memory.
Attachment #182748 - Flags: approval1.8b3?
Attachment #182748 - Flags: approval1.8b3? → approval1.8b3+
Fixed.  timeless, could you verify?
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.8beta3
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Assignee: general → bzbarsky
Status: REOPENED → NEW
Status: NEW → RESOLVED
Closed: 19 years ago19 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: