Opened 8 years ago

Closed 8 years ago

#12867 closed defect (fixed)

[patch][cla] dojo.config has infinitely recursive objects with AMD and json

Reported by: Chris Mitchell Owned by: Rawld Gill
Priority: high Milestone: 1.7
Component: Core Version: 1.6.1
Keywords: Cc: rott@…
Blocked By: Blocking:

Description

In dojo.js at line 153 in trunk today, we have:

(hasCache[name]===undefined
force) && (hasCache[name] = test);

Which results in infinite recursion and an uncaught error in all browsers when calling:

dojo.toJson(dojo.config);

The potential fix:

(hasCache[name]===undefined
force)

&& (name != 'hasCache') && (name != 'config-hasCache') && (hasCache[name] = test);

Or something similar. Point is, we should not be setting hasCache.hasCache = hasCache. Nor should we be setting hasCache.config-hasCache = config-hasCache.

It's possible the fix needs to be bigger. Applying this fix gets us past the problem.

Change History (4)

comment:1 Changed 8 years ago by Chris Mitchell

Milestone: tbd1.7

comment:2 Changed 8 years ago by Chris Mitchell

Owner: changed from rgill to Rawld Gill

comment:3 Changed 8 years ago by Rawld Gill

Status: newassigned

comment:4 Changed 8 years ago by Rawld Gill

Resolution: fixed
Status: assignedclosed

(In [25085]) fixes #12867; improve forEach impl (thanks bforbes); !strict

Note: See TracTickets for help on using tickets.