It broke when element was undefined. Looking at the code there were plenty of other places where values could have been undefined.
There’s no reason to use strict equality so rampantly. (The performance gains are insignificant.) > On Jun 21, 2017, at 6:48 PM, Piotr Zarzycki <piotrzarzyck...@gmail.com> wrote: > > Hi Harbs, > > What was wrong with that ? > > Thanks, Piotr > > 2017-06-21 17:42 GMT+02:00 <ha...@apache.org>: > >> Repository: flex-asjs >> Updated Branches: >> refs/heads/tlf c40993826 -> 3d2190621 >> >> >> Reverted strict equality >> >> >> Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo >> Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/3d219062 >> Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/3d219062 >> Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/3d219062 >> >> Branch: refs/heads/tlf >> Commit: 3d2190621d3900dfa40f9480eb2aa4370b8fd847 >> Parents: c409938 >> Author: Harbs <ha...@in-tools.com> >> Authored: Wed Jun 21 18:42:31 2017 +0300 >> Committer: Harbs <ha...@in-tools.com> >> Committed: Wed Jun 21 18:42:31 2017 +0300 >> >> ---------------------------------------------------------------------- >> .../main/flex/org/apache/flex/core/UIBase.as | 40 ++++++++++---------- >> 1 file changed, 20 insertions(+), 20 deletions(-) >> ---------------------------------------------------------------------- >> >> >> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ >> 3d219062/frameworks/projects/Basic/src/main/flex/org/ >> apache/flex/core/UIBase.as >> ---------------------------------------------------------------------- >> diff --git >> a/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIBase.as >> b/frameworks/projects/Basic/src/main/flex/org/apache/flex/core/UIBase.as >> index 432c8d2..8d08465 100644 >> --- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/ >> core/UIBase.as >> +++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/ >> core/UIBase.as >> @@ -202,7 +202,7 @@ package org.apache.flex.core >> */ >> public function set explicitWidth(value:Number):void >> { >> - if (_explicitWidth === value) >> + if (_explicitWidth == value) >> return; >> >> // width can be pixel or percent not both >> @@ -235,7 +235,7 @@ package org.apache.flex.core >> */ >> public function set explicitHeight(value:Number):void >> { >> - if (_explicitHeight === value) >> + if (_explicitHeight == value) >> return; >> >> // height can be pixel or percent not both >> @@ -272,7 +272,7 @@ package org.apache.flex.core >> public function set percentWidth(value:Number):void >> { >> COMPILE::SWF { >> - if (_percentWidth === value) >> + if (_percentWidth == value) >> return; >> >> if (!isNaN(value)) >> @@ -315,7 +315,7 @@ package org.apache.flex.core >> public function set percentHeight(value:Number):void >> { >> COMPILE::SWF { >> - if (_percentHeight === value) >> + if (_percentHeight == value) >> return; >> >> if (!isNaN(value)) >> @@ -369,7 +369,7 @@ package org.apache.flex.core >> { >> var pixels:Number; >> var strpixels:String = positioner.style.width as String; >> - if (strpixels !== null && strpixels.indexOf('%') !== -1) >> + if (strpixels !== null && strpixels.indexOf('%') != -1) >> pixels = NaN; >> else if (strpixels === "") >> pixels = NaN; >> @@ -377,7 +377,7 @@ package org.apache.flex.core >> pixels = parseFloat(strpixels); >> if (isNaN(pixels)) { >> pixels = positioner.offsetWidth; >> - if (pixels === 0 && positioner.scrollWidth !== 0) { >> + if (pixels == 0 && positioner.scrollWidth != 0) { >> // invisible child elements cause offsetWidth to be 0. >> pixels = positioner.scrollWidth; >> } >> @@ -471,7 +471,7 @@ package org.apache.flex.core >> pixels = parseFloat(strpixels); >> if (isNaN(pixels)) { >> pixels = positioner.offsetHeight; >> - if (pixels === 0 && positioner.scrollHeight !== 0) { >> + if (pixels == 0 && positioner.scrollHeight != 0) { >> // invisible child elements cause offsetHeight to be >> 0. >> pixels = positioner.scrollHeight; >> } >> @@ -804,7 +804,7 @@ package org.apache.flex.core >> } >> else >> { >> - if (displayStyleForLayout !== null) >> + if (displayStyleForLayout != null) >> positioner.style.display = displayStyleForLayout; >> dispatchEvent(new Event('show')); >> } >> @@ -836,7 +836,7 @@ package org.apache.flex.core >> COMPILE::SWF >> public function get model():Object >> { >> - if (_model === null) >> + if (_model == null) >> { >> // addbead will set _model >> addBead(new (ValuesManager.valuesImpl.getValue(this, >> "iBeadModel")) as IBead); >> @@ -850,7 +850,7 @@ package org.apache.flex.core >> COMPILE::SWF >> public function set model(value:Object):void >> { >> - if (_model !== value) >> + if (_model != value) >> { >> addBead(value as IBead); >> dispatchEvent(new Event("modelChanged")); >> @@ -875,7 +875,7 @@ package org.apache.flex.core >> { >> var c:Class = ValuesManager.valuesImpl.getValue(this, >> "iBeadView") as Class; >> // JS undefined AS null >> - if (c != null) >> + if (c) >> { >> _view = (new c()) as IBeadView; >> addBead(_view); >> @@ -889,7 +889,7 @@ package org.apache.flex.core >> */ >> public function set view(value:IBeadView):void >> { >> - if (_view !== value) >> + if (_view != value) >> { >> addBead(value as IBead); >> dispatchEvent(new Event("viewChanged")); >> @@ -1107,7 +1107,7 @@ package org.apache.flex.core >> for (var i:int = 0; i < n; i++) >> { >> var bead:IBead = _beads[i]; >> - if (bead === value) >> + if (bead == value) >> { >> _beads.splice(i, 1); >> return bead; >> @@ -1202,7 +1202,7 @@ package org.apache.flex.core >> COMPILE::JS >> { >> var children:Array = internalChildren(); >> - if (children.length === 0) >> + if (children.length == 0) >> { >> return null; >> } >> @@ -1355,7 +1355,7 @@ package org.apache.flex.core >> for each (var bead:IBead in beads) >> addBead(bead); >> >> - if (getBeadByType(IBeadModel) === null) >> + if (getBeadByType(IBeadModel) == null) >> { >> c = ValuesManager.valuesImpl.getValue(this, >> "iBeadModel") as Class; >> // JS undefined AS null >> @@ -1367,7 +1367,7 @@ package org.apache.flex.core >> } >> } >> // view JS undefined AS null >> - if (_view == null && getBeadByType(IBeadView) === null) >> + if (_view == null && getBeadByType(IBeadView) == null) >> { >> c = ValuesManager.valuesImpl.getValue(this, "iBeadView") >> as Class; >> // JS undefined AS null >> @@ -1378,7 +1378,7 @@ package org.apache.flex.core >> addBead(view); >> } >> } >> - if (getBeadByType(IBeadController) === null) >> + if (getBeadByType(IBeadController) == null) >> { >> c = ValuesManager.valuesImpl.getValue(this, >> "iBeadController") as Class; >> // JS undefined AS null >> @@ -1403,7 +1403,7 @@ package org.apache.flex.core >> public function get measurementBead() : IMeasurementBead >> { >> var measurementBead:IMeasurementBead = >> getBeadByType(IMeasurementBead) as IMeasurementBead; >> - if( measurementBead === null ) { >> + if( measurementBead == null ) { >> addBead(measurementBead = new >> (ValuesManager.valuesImpl.getValue(this, "iMeasurementBead")) as >> IMeasurementBead); >> } >> >> @@ -1427,7 +1427,7 @@ package org.apache.flex.core >> { >> COMPILE::SWF >> { >> - if (_stageProxy === null) >> + if (!_stageProxy) >> { >> _stageProxy = new StageProxy(stage); >> _stageProxy.addEventListener("removedFromStage", >> stageProxy_removedFromStageHandler); >> @@ -1484,7 +1484,7 @@ package org.apache.flex.core >> COMPILE::JS >> protected function createElement():WrappedHTMLElement >> { >> - if (element === null) >> + if (element == null) >> element = document.createElement('div') as >> WrappedHTMLElement; >> // initially undefined could be set to null >> if (positioner == null) >> >>