[flexcoders] Flex Weirdness: Verify Errors and E4X

2008-05-04 Thread Paul Whitelock
For some reason I've been seeing a lot of verify errors on a project
I'm working on. The error always seems to be:

VerifyError: Error #1025: An invalid register 5 was accessed.

It seems to be related to constructing an event within a
dispatchEvent call, but I've done this countless times and have
never seen a VerifyError. So far I've been able to restructure
the code a bit and it goes away, but this doesn't seem normal. Anyone
know what might be going on?

The other bit of strangeness is related to E4X. I have something
similar to the following:

var returnedXML:String = event.result.content as String;
var myXML:XML = new XML(returnedXML);   
var xmlNS:Namespace = myXML.namespace();
default xml namespace = xmlNS;

var dataItem1:String = myXML..XMLDataItem1;
var dataItem2:Number = Number(myXML..XMLDataItem2);

if (event.result.header.code == someValue) {
switch (switchVar) {
case 1:
var dataItem3:XMLList = myXML..XMLDataItem3;
break;
}
}

The problem is that dataItem3 is always set to null UNLESS I
recreate the XML object just before the dataItem3 statement, like so:

myXML = new XML(returnedXML);
var dataItem3:XMLList = myXML..XMLDataItem3;

Any idea why E4X returns null if I don't recreate the XML object?   







RE: [flexcoders] Flex Weirdness: Verify Errors and E4X

2008-05-04 Thread Alex Harui
Verify errors generally mean that you fooled the compiler somehow.
Sometimes, name collisions can fool the compiler.

 

As far as E4x goes, the code you showed may mean that XMLDataItem3 may
not be in the default namespace.

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Paul Whitelock
Sent: Sunday, May 04, 2008 2:49 PM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Flex Weirdness: Verify Errors and E4X

 

For some reason I've been seeing a lot of verify errors on a project
I'm working on. The error always seems to be:

VerifyError: Error #1025: An invalid register 5 was accessed.

It seems to be related to constructing an event within a
dispatchEvent call, but I've done this countless times and have
never seen a VerifyError. So far I've been able to restructure
the code a bit and it goes away, but this doesn't seem normal. Anyone
know what might be going on?

The other bit of strangeness is related to E4X. I have something
similar to the following:

var returnedXML:String = event.result.content as String;
var myXML:XML = new XML(returnedXML); 
var xmlNS:Namespace = myXML.namespace();
default xml namespace = xmlNS;

var dataItem1:String = myXML..XMLDataItem1;
var dataItem2:Number = Number(myXML..XMLDataItem2);

if (event.result.header.code == someValue) {
switch (switchVar) {
case 1:
var dataItem3:XMLList = myXML..XMLDataItem3;
break;
}
}

The problem is that dataItem3 is always set to null UNLESS I
recreate the XML object just before the dataItem3 statement, like so:

myXML = new XML(returnedXML);
var dataItem3:XMLList = myXML..XMLDataItem3;

Any idea why E4X returns null if I don't recreate the XML object?