Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#8377 closed defect (invalid)

mll[x] is not a function error - loader.js

Reported by: Josh Trutwin Owned by: anonymous
Priority: high Milestone: tbd
Component: Core Version: 1.2.3
Keywords: mll[x] is not a function loader.js Cc:
Blocked By: Blocking:

Description

I've been seeing this on occasion with dojo 1.2 and now testing with trunk.

The error is "mll[x] is not a function" and it's thrown on line 145 of _base/_loader/loader.js - I wrapped inside a try / catch to get more info:

                for(var x = 0; x < mll.length; x++){
                        try {
                                mll[x]();
                        }
                        catch (e) { 
                                console.debug(mll);
                                console.debug(e);
                        }
                }

In one instance it showed mll as an array with 9 items in it, the first 8 items were functions but the last one shows up as this in firebug:

Object chain=[0] id=1 fired=0 paused=0 results=Object

So calling that as a function breaks. Should this be in a try/catch by default?

I'm attaching View Source from the page I had this occur on. I apologize for the HTML - a large portion of it is generated. The page seems to work ok so I'm not sure if this error is causing any major issues or not but it's an error.

Any clues? Additional information I can provide?

Josh

Attachments (1)

loader.html (25.1 KB) - added by Josh Trutwin 10 years ago.
HTML where error occurred

Download all attachments as: .zip

Change History (4)

Changed 10 years ago by Josh Trutwin

Attachment: loader.html added

HTML where error occurred

comment:1 Changed 10 years ago by Adam Peller

Resolution: invalid
Status: newclosed

this looks suspicious

dojo.addOnLoad(run_xhr_26(26));

We tend not to put in a lot of diagnostic try/catches for bloat reasons. Perhaps there's something we can do to make the code more descriptive when it's traced back to loader? "mll" is pretty mysterious, I guess.

comment:2 Changed 10 years ago by James Burke

As peller indicated, pass a function dojo.addOnLoad to avoid the error. Calling run_xhr_26(26) probably does not return a function to pass to dojo.addOnLoad.

comment:3 Changed 10 years ago by Josh Trutwin

My fault - last night actually when I was going to bed I realized my mistake. :( Sorry for the noise.

Note: See TracTickets for help on using tickets.