On Mon, Oct 29, 2012 at 12:47 PM, Gordon Smith <gosm...@adobe.com> wrote:

> It's more complicated than I thought.
>
> I tried it in FB 4.6 (i.e., with the old compiler). If you have a one
> space inside the <String> tag without a CDATA section around it, then the
> value is null. But with CDATA around the space, the value is a string with
> one space character.
>
> In my opinion, this behavior of the old compiler is inconsistent and
> should be considered a bug. So we have to decide how bug-compatible we want
> Falcon to be with the old compiler. It may be difficult to even achieve
> bug-compatibility in cases like this.
>

This is an obvious case, but I think we should fix bugs/inconsistencies
whenever we get a chance.


>
> Could we live with Falcon compiling it as a string with one space,
> regardless of whether there is CDATA or not?
>

Yes, that would the best approach.

Thanks,
Om


> - Gordon
>
> -----Original Message-----
> From: Gordon Smith
> Sent: Monday, October 29, 2012 10:17 AM
> To: flex-dev@incubator.apache.org
> Subject: RE: Does Falcon need to take CDATA sections into account when
> parsing <fx:string/>?
>
> This is a bug.
>
> The tests in MXMLBooleanNode are more complete that for other primitive
> tags. I added a test to MXMLBooleanNode that shows CDATA works inside of
> <Boolean>. Each of the primitive tags needs this kind of test.
>
> - Gordon
>
> -----Original Message-----
> From: Roland Zwaga [mailto:rol...@stackandheap.com]
> Sent: Sunday, October 28, 2012 10:12 AM
> To: flex-dev@incubator.apache.org
> Subject: Does Falcon need to take CDATA sections into account when parsing
> <fx:string/>?
>
> Hi there,
>
> I've been taking my few first uncertain steps into grokking the Falcon
> sources. I was looking at the MXMLStringNode tests and wanted to see if the
> parser takes into account CDATA sections in them.
> So I added a test that set up an <fx:string/> node like this:
>
> String code = "<fx:String><![CDATA[ ]]></fx:String>"; //The CDATA section
> here contains a single space IMXMLStringNode node =
> getMXMLStringNode(code); assertThat("getValue", node.getValue(), is(" "));
>
> Now, this test fails, because the node.getValue() returns null. IMHO, this
> is incorrect behaviour, since CDATA sections should be parsed literally
> without any assumptions or postprocessing.
>
> Does everyone agree on this? Thoughts please ;)
>
> --
> regards,
> Roland
>
> --
> Roland Zwaga
> Senior Consultant | Stack & Heap BVBA
>
> +32 (0)486 16 12 62 | rol...@stackandheap.com |
> +http://www.stackandheap.com
>
> http://zwaga.blogspot.com
> http://www.springactionscript.org
> http://www.as3commons.org
>

Reply via email to