apache / apache/royale-compiler

XMLListCollection: exception in constructor

Aperta
#167 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
Java
Stelle
113
Fork
54
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Test case code:

i2.mxml:

```




```

testglob.as:

```
package
{
import mx.collections.XMLListCollection;

[Bindable]
public class testglob
{
static public var Hello:String = "Hello";
static public var Devices:XMLListCollection=new XMLListCollection();
}
}
```

When the XMLListCollection is initialised in the mxml file, everything is fine and the initialisation is successful.

When it's initialised by importing the testglob.as class, I get an exception:

```
Uncaught TypeError: Cannot read property 'createUID' of undefined
at mx.collections.XMLListAdapter.set__source (XMLListAdapter.js:615)
at new mx.collections.XMLListAdapter (XMLListAdapter.js:37)
at mx.collections.XMLListCollection.set__source (XMLListCollection.js:362)
at new mx.collections.XMLListCollection (XMLListCollection.js:37)
at testglob.js:50
```

On the face of it it seems a bit like the other XML bug I reported a couple of days ago, where the framework is calling an internal function that seems not to be there. So it's either never loaded (it looks as if it is) or something is treading on it. Or something else completely different.

I am running the nightly build on OSX big sur, log follows:

```
Using Royale Compiler codebase: /Users/jim.page/Documents/Royale/nightly-mvn/SDKs/js/bin/../..
Using Royale SDK: /Users/jim.page/Documents/Royale/nightly-mvn/SDKs/js/bin/../..
MXMLJSC
+royalelib=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/js/bin/../../frameworks
-sdk-js-lib=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/js/bin/../../frameworks/js/Royale/generated-sources
-source-path
./src/
-compiler.services=src/services-config.xml
-locale=en_US,es_ES
-allow-source-path-overlap=true
-source-path=./src/locale/{locale}
-compiler.fonts.managers=flash.fonts.AFEFontManager
-target-player=32.0.0
-compiler.optimize=false
-define+=config::DEBUG,true
-define+=goog::DEBUG,false
+configname=flex
-compiler.targets=JSRoyale
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/js/libs/royale-typedefs-gcl-0.9.8-SNAPSHOT-typedefs.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Core-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Language-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/HTML-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Basic-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Collections-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Binding-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Graphics-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/MXRoyale-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/DragDrop-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Express-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Effects-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Formatters-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Charts-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Network-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/Reflection-0.9.8-SNAPSHOT-js.swc
-library-path+=/Users/jim.page/Documents/Royale/nightly-mvn/SDKs/frameworks/libs/XML-0.9.8-SNAPSHOT-js.swc
-link-report=./report.xml
-output
bld/index.swf
--
src/i2.mxml
Dec 13, 2020 3:24:40 AM com.google.javascript.jscomp.LoggerErrorManager println
WARNING: /Users/jim.page/Documents/git/flexportal/bin/js-debug/mx/core/UIComponent.js:3357: WARNING - Suspicious code. This code lacks side-effects. Is there a bug?
} else if ((this.mx_core_UIComponent__toolTip == null || this.mx_core_UIComponent__toolTip == "") && this.mx_core_UIComponent__toolTipBead != null) {
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Dec 13, 2020 3:24:40 AM com.google.javascript.jscomp.LoggerErrorManager printSummary
WARNING: 0 error(s), 2 warning(s), 98.2% typed
The project 'i2' has been successfully compiled and optimized.
40.123570103 seconds
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Riproduci il malfunzionamento da i2.mxml e testglob.as, quindi esamina testglob.js, XMLListCollection.js e XMLListAdapter.js nelle posizioni dello stack indicate. Confronta l’inizializzazione dal file MXML con l’inizializzazione tramite testglob e verifica che la costruzione di XMLListCollection non generi più l’errore createUID.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
compilers
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.