This is an automated email from the ASF dual-hosted git repository.
joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git
The following commit(s) were added to refs/heads/develop by this push:
new e6e287850 NamespaceDefinition: fix null exception when calling
addResolvedUsedNamespace() and getResolvedOpenNamespaces() hasn't been called
previously
e6e287850 is described below
commit e6e2878506d06421ee37ee553c5516a25ca28464
Author: Josh Tynjala <[email protected]>
AuthorDate: Thu Jul 11 15:34:47 2024 -0700
NamespaceDefinition: fix null exception when calling
addResolvedUsedNamespace() and getResolvedOpenNamespaces() hasn't been called
previously
---
.../internal/definitions/NamespaceDefinition.java | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git
a/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/NamespaceDefinition.java
b/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/NamespaceDefinition.java
index bbdef2eb0..bc551aae6 100644
---
a/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/NamespaceDefinition.java
+++
b/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/NamespaceDefinition.java
@@ -2048,12 +2048,7 @@ public abstract class NamespaceDefinition extends
DefinitionBase implements INam
forwardRefPred = pred;
}
- /**
- * Gets the current set of resolved open namespaces.
- *
- * @return The current set of resolved open namespaces.
- */
- private Set<INamespaceDefinition> getResolvedOpenNamespaces(String
name)
+ private void initializeResolvedOpenNamespaces()
{
if (resolvedOpenNamespaces == null)
{
@@ -2070,6 +2065,16 @@ public abstract class NamespaceDefinition extends
DefinitionBase implements INam
((CompilerProject)project).addGlobalUsedNamespacesToNamespaceSet(resolvedOpenNamespaces);
}
}
+ }
+
+ /**
+ * Gets the current set of resolved open namespaces.
+ *
+ * @return The current set of resolved open namespaces.
+ */
+ private Set<INamespaceDefinition> getResolvedOpenNamespaces(String
name)
+ {
+ initializeResolvedOpenNamespaces();
if (scope != null)
{
@@ -2210,6 +2215,7 @@ public abstract class NamespaceDefinition extends
DefinitionBase implements INam
*/
public void addResolvedUsedNamespace(NamespaceDefinition ns)
{
+ initializeResolvedOpenNamespaces();
resolvedOpenNamespaces.add(ns);
}