FLUID-4157: instantiator.clearComponent() crashes on encountering non-Component material

Metadata

Source
FLUID-4157
Type
Bug
Priority
Major
Status
Closed
Resolution
Fixed
Assignee
Colin Clark
Reporter
Antranig Basman
Created
2011-03-22T16:28:28.041-0400
Updated
2014-03-03T13:12:14.718-0500
Versions
  1. 1.3.1
Fixed Versions
  1. 1.4
Component
  1. Framework

Description

The new recursive implementation of instantiator.clearComponent has a substandard implementation which makes an assumption that every traversed element is a component. This assumption is not true in general - component trees may contain arbitrary non-component material, assuming typeName and id are missing.

(13:22:01) Isle of Yura: fluid.each(child.options.components, function(gchild, gchildname) { 10966 that.clearComponent(child, gchildname); 10967 });
(13:22:16) Isle of Yura: so child is not really a component 🙂
(13:22:25) Isle of Yura: it's a function that returns an object
(13:22:29) Isle of Yura: so it has no options

Comments

  • Antranig Basman commented 2011-03-25T00:01:44.019-0400

    New recursive implementation of instantiator.clearComponent uses a refactored utility broken out of IoC into public utility fluid.visitComponentChildren