Status/Resolution/Reason: To Fix//Investigate
Reporter/Name(from Bugbase): Aaron N. / ()
Created: 08/28/2019
Components: Language, Functions
Versions: 2018
Failure Type: Incorrectly functioning
Found In Build/Fixed In Build: 2018.0.04.314546 /
Priority/Frequency: Normal / Some users will encounter
Locale/System: / Platforms All
Vote Count: 0
Issue: Array Case functions cannot find XML
The ArrayFind/ArrayFindAll/ArrayContains/ArrayDelete docs say these functions search for complex objects excluding COM/CORBA. However, this isn't currently true for XML.
Repro:
MyCFC.cfc
-----------
component {function myFunction(){}}
-----------
index.cfm
-----------
<cfscript>
o1 = new MyCFC();
o2 = new MyCFC();
q1 = queryNew("myColumn", "varchar", [["asdf"]]);
q2 = queryNew("myColumn", "varchar", [["asdf"]]);
cfxml(variable="xml1") {writeOutput("<myXML></myXML>");};
cfxml(variable="xml2") {writeOutput("<myXML></myXML>");};
haystacksAndNeedles = [
{haystack=[["foo"]], needle=["foo"]},
{haystack=[{foo="bar"}], needle={foo="bar"}},
{haystack=[[foo="bar"]], needle=[foo="bar"]},
{haystack=[o1], needle=o2},
{haystack=[q1], needle=q2},
{haystack=[xml1], needle=xml2}
];
for(haystackAndNeedle in haystacksAndNeedles) {
writeOutput(arrayFind(haystackAndNeedle.haystack, haystackAndNeedle.needle) & ' ' & arrayFindAll(haystackAndNeedle.haystack, haystackAndNeedle.needle).toList() & ' ' & arrayContains(haystackAndNeedle.haystack, haystackAndNeedle.needle) & ' ' & arrayDelete(haystackAndNeedle.haystack, haystackAndNeedle.needle) & '<br>');
}
</cfscript>
-----------
Actual Result:
1 1 YES YES
1 1 YES YES
1 1 YES YES
1 1 YES YES
1 1 YES YES
0 NO NO
Expected Result:
1 1 YES YES
1 1 YES YES
1 1 YES YES
1 1 YES YES
1 1 YES YES
1 1 YES YES
Related URL: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-a-b/arrayfind.html
Related URL: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-a-b/arrayfindall.html
Related URL: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-a-b/arraycontains.html
Related URL: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-a-b/arraydelete.html
Attachments:
Comments: