Closed Bug 62816 Opened 24 years ago Closed 24 years ago

Unable to load XBL binding: 'protobindings'.

Categories

(Core :: XBL, defect, P3)

x86
Windows 2000
defect

Tracking

()

VERIFIED WORKSFORME

People

(Reporter: netdragon, Assigned: hyatt)

Details

I have been having this problem for a few days. I think it has to do with 
chrome. It happens when I start Mozilla and before the browser loads. Mozilla 
doesn't load. Someone said they think it has to do with installed-chrome.txt, 
but I'm not sure. To reproduce:

Build fresh as debug on Windows 2k with a build from the 8th on.
Run Mozilla from the dist/bin dir.
Ignore any messages about |truncate()|. (This has been happening since before 
the |truncate()| problem.

You get a message: 


###!!! ASSERTION: Unable to locate an XBL binding.: 'protoBinding', file E:\mozi
lla\layout\xbl\src\nsXBLService.cpp, line 1000



The debug dialog:



Type Manifest File: E:\mozilla\dist\WIN32_D.OBJ\bin\components\xpti.dat
nsNativeComponentLoader: autoregistering begins.
nsNativeComponentLoader: autoregistering succeeded
nNCL: registering deferred (0)
WEBSHELL+ = 1
plugins at: E:\mozilla\dist\WIN32_D.OBJ\bin\plugins
Note: verifyreflow is disabled
Note: styleverifytree is disabled
WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileSelection.js line 180: function onS
tart does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileSelection.js line 200: function onS
tart does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 68: function Rename
Profile does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 80: function Rename
Profile does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 88: redeclaration o
f var lString

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 90: function Rename
Profile does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 102: redeclaration
of var lString

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 113: function Renam
eProfile does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 141: function Confi
rmDelete does not always return a value

WARNING: waaah!, file E:\mozilla\rdf\content\src\nsXULPrototypeDocument.cpp, lin
e 523
JavaScript strict warning:
chrome://communicator/content/profile/profileManager.js line 281: function Handl
eClickEvent does not always return a value

Note: frameverifytree is disabled
###!!! ASSERTION: Can't use |Truncate()| to make a string longer.: 'anIndex<=mLe
ngth', file ..\ds\nsString2.h, line 146
has multiple monitor apis is 1
Move window by 456,356.5
New location for profile registry and user profile directories is -> C:\WINDOWS\
USER PROFILES AND SETTINGS\BOBERB\APPLICATION DATA\Mozilla
start with profile: MozDebug
ProfileManager : StartApprunner
profileName passed in: MozDebugCSSLoaderImpl::LoadAgentSheet: Load of URL 'file:
///C:/WINDOWS/USER%20PROFILES%20AND%20SETTINGS/BOBERB/APPLICATION%20DATA/Mozilla
/Users50/MozDebug/95xz5wv0.slt/chrome/userChrome.css' failed.  Error code: 18
CSSLoaderImpl::LoadAgentSheet: Load of URL 'file:///C:/WINDOWS/USER%20PROFILES%2
0AND%20SETTINGS/BOBERB/APPLICATION%20DATA/Mozilla/Users50/MozDebug/95xz5wv0.slt/
chrome/userContent.css' failed.  Error code: 18
WARNING: not calling OnDataAvailable, file E:\mozilla\netwerk\base\src\nsAsyncSt
reamListener.cpp, line 410
Failed to load XBL document file:///E:/mozilla/dist/WIN32_D.OBJ/bin/chrome/class
ic/skin/classic/global/classicBindings.xml
###!!! ASSERTION: Can't use |Truncate()| to make a string longer.: 'anIndex<=mLe
ngth', file ..\ds\nsString2.h, line 146
WARNING: not calling OnDataAvailable, file E:\mozilla\netwerk\base\src\nsAsyncSt
reamListener.cpp, line 410
Failed to load XBL document file:///E:/mozilla/dist/WIN32_D.OBJ/bin/chrome/class
ic/skin/classic/global/buttonBindings.xml
WEBSHELL- = 0
Initialized app shell component {33e569b0-40f8-11d4-9a41-000064657374}, rv=0x000
00000
Initialized app shell component {18c2f989-b09f-11d2-bcde-00805f0e1353}, rv=0x000
00000
WEBSHELL+ = 1
WEBSHELL+ = 2
Enabling Quirk StyleSheet
###!!! ASSERTION: Unable to locate an XBL binding.: 'protoBinding', file E:\mozi
lla\layout\xbl\src\nsXBLService.cpp, line 1000







Call Stack: 








NTDLL! 77f9eea9()
nsDebug::Assertion(const char * 0x0283af54, const char * 0x0283af44, const char 
* 0x0283af18, int 1000) line 254 + 13 bytes
nsXBLService::GetBindingInternal(nsXBLService * const 0x029cefb0, nsIContent * 
0x02a39790, const nsCString & {...}, int 0, int * 0x0012ee7c, nsIXBLBinding * * 
0x0012f06c) line 1000 + 38 bytes
nsXBLService::GetBinding(nsXBLService * const 0x029cefb0, nsIContent * 
0x02a39790, const nsCString & {...}, nsIXBLBinding * * 0x0012f06c) line 924
nsXBLService::LoadBindings(nsXBLService * const 0x029cefb0, nsIContent * 
0x02a39790, const basic_nsAReadableString<unsigned short> & {...}, int 0, 
nsIXBLBinding * * 0x0012f17c, int * 0x0012f164) line 666 + 47 bytes
nsCSSFrameConstructor::ConstructFrameInternal(nsIPresShell * 0x02a2d170, 
nsIPresContext * 0x02a27d00, nsFrameConstructorState & {...}, nsIContent * 
0x02a39790, nsIFrame * 0x00c9dc4c, nsIAtom * 0x0160eaf0, int 6, nsIStyleContext 
* 0x02a39240, nsFrameItems & {...}, int 0) line 7540 + 73 bytes
nsCSSFrameConstructor::ConstructFrame(nsIPresShell * 0x02a2d170, nsIPresContext 
* 0x02a27d00, nsFrameConstructorState & {...}, nsIContent * 0x02a39790, 
nsIFrame * 0x00c9dc4c, nsFrameItems & {...}) line 7500 + 56 bytes
nsCSSFrameConstructor::CreateAnonymousFrames(nsIPresShell * 0x02a2d170, 
nsIPresContext * 0x02a27d00, nsFrameConstructorState & {...}, nsIContent * 
0x02a23948, nsIDocument * 0x02a21c30, nsIFrame * 0x00c9dc4c, nsFrameItems & 
{...}) line 5576
nsCSSFrameConstructor::BuildGfxScrollFrame(nsIPresShell * 0x02a2d170, 
nsIPresContext * 0x02a27d00, nsFrameConstructorState & {...}, nsIContent * 
0x02a23948, nsIDocument * 0x02a21c30, nsIFrame * 0x00c9dbd8, nsIStyleContext * 
0x02a39d10, int 1, nsIFrame * & 0x00c9dc4c, nsFrameItems & {...}, nsIFrame * 
0x00c9dcf4) line 6519
nsCSSFrameConstructor::BeginBuildingScrollFrame(nsIPresShell * 0x02a2d170, 
nsIPresContext * 0x02a27d00, nsFrameConstructorState & {...}, nsIContent * 
0x02a23948, nsIStyleContext * 0x02a39d10, nsIFrame * 0x00c9dbd8, nsIAtom * 
0x01609b50, nsIDocument * 0x02a21c30, int 1, nsIFrame * & 0x00c9dc14, 
nsCOMPtr<nsIStyleContext> & {...}, nsIFrame * & 0x00000000, nsIFrame * 
0x00000000) line 6
nsCSSFrameConstructor::ConstructRootFrame(nsCSSFrameConstructor * const 
0x02a29160, nsIPresShell * 0x02a2d170, nsIPresContext * 0x02a27d00, nsIContent 
* 0x02a23948, nsIFrame * & 0x00000000) line 3762
StyleSetImpl::ConstructRootFrame(StyleSetImpl * const 0x02a2d030, 
nsIPresContext * 0x02a27d00, nsIContent * 0x02a23948, nsIFrame * & 0x00000000) 
line 1140 + 39 bytes
PresShell::InitialReflow(PresShell * const 0x02a2d170, int 1560, int 1095) line 
2275
HTMLContentSink::StartLayout() line 3532
HTMLContentSink::OpenBody(HTMLContentSink * const 0x02a23c30, const 
nsIParserNode & {...}) line 2839
CNavDTD::OpenBody(const nsIParserNode * 0x02a28690) line 3014 + 31 bytes
CNavDTD::OpenContainer(const nsIParserNode * 0x02a28690, nsHTMLTag 
eHTMLTag_body, int 1, nsEntryStack * 0x00000000) line 3336 + 12 bytes
CNavDTD::HandleDefaultStartToken(CToken * 0x00c37dc8, nsHTMLTag eHTMLTag_body, 
nsIParserNode * 0x02a28690) line 1187 + 20 bytes
CNavDTD::HandleStartToken(CToken * 0x00c37dc8) line 1625 + 22 bytes
CNavDTD::HandleToken(CNavDTD * const 0x02a28350, CToken * 0x00c37dc8, nsIParser 
* 0x02a21550) line 760 + 12 bytes
CNavDTD::BuildModel(CNavDTD * const 0x02a28350, nsIParser * 0x02a21550, 
nsITokenizer * 0x02a280a0, nsITokenObserver * 0x00000000, nsIContentSink * 
0x02a23c30) line 475 + 20 bytes
nsParser::BuildModel() line 2006 + 34 bytes
nsParser::ResumeParse(int 1, int 1) line 1887 + 11 bytes
nsParser::OnStopRequest(nsParser * const 0x02a21558, nsIChannel * 0x0354b3b0, 
nsISupports * 0x00000000, unsigned int 0, const unsigned short * 0x100acc48 
gCommonEmptyBuffer) line 2360 + 19 bytes
nsDocumentOpenInfo::OnStopRequest(nsDocumentOpenInfo * const 0x0354b340, 
nsIChannel * 0x0354b3b0, nsISupports * 0x00000000, unsigned int 0, const 
unsigned short * 0x100acc48 gCommonEmptyBuffer) line 277
nsStreamIOChannel::OnStopRequest(nsStreamIOChannel * const 0x0354b3b4, 
nsIChannel * 0x0354b230, nsISupports * 0x00000000, unsigned int 0, const 
unsigned short * 0x100acc48 gCommonEmptyBuffer) line 620 + 45 bytes
nsOnStopRequestEvent::HandleEvent(nsOnStopRequestEvent * const 0x0354ed30) line 
300 + 46 bytes
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x0354ed40) line 92 + 12 bytes
PL_HandleEvent(PLEvent * 0x0354ed40) line 576 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x0055a1e0) line 509 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x0003007c, unsigned int 49492, unsigned int 0, 
long 5612000) line 1054 + 9 bytes
USER32! 77e148dc()
USER32! 77e14aa7()
USER32! 77e266fd()
nsAppShellService::Run(nsAppShellService * const 0x00572100) line 408
main1(int 1, char * * 0x004b41c0, nsISupports * 0x00000000) line 1016 + 32 bytes
main(int 1, char * * 0x004b41c0) line 1260 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77e992a6()
Same behavior as bug 62787?
-> hyatt
Assignee: asa → hyatt
Status: UNCONFIRMED → NEW
Component: Browser-General → XBL
Ever confirmed: true
Although its a different platform - it seems related. I don't believe that it
should be marked duplicate, though, because if they fix it on the macintosh - it
doesn't mean it will be fixed on the pc. Maybe a tracker bug could be opened.
hyatt can't repro this, sounds like a malformed xbl file.  
I will check this on a recent build soon.
Same behavior for a build from a few days ago.

BenGoodger told me it is a malformed XBL file and to do a debug search for 
aURLStr. I found that in the GetBinding function - and it referenced 
global/skin/classicBinding.xml. It looks like it is happening in the scrollbar 
binding (the variable "ref" had that in it), but then again I'm not sure.

This is my scrollbar binding:

  <binding id="scrollbar">
    <content>
      <xul:scrollbarbutton type="decrement" inherits="sborient=align"/>
      <xul:slider flex="1" inherits="curpos,maxpos,pageincrement,increment">
	      <xul:thumb inherits="align,src" flex="1"/>
      </xul:slider>
      <xul:scrollbarbutton type="increment" inherits="sborient=align"/>
    </content>
  </binding>

What bothers me is why this happens for some people and not for others from a 
fresh build.
BTW: I downloaded the source from the ftp nightly/latest dir. The only reason I 
can think this happens to me and not others, is because this is my first build 
since last year.
worksforme. this isn't still an issue is it?
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → WORKSFORME
Not anymore, although I don't think RESOLVED WORKSFORME is a proper resolution 
months after the bug was filed.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.