diff options
author | Sven Gothel <[email protected]> | 2012-10-17 18:42:32 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2012-10-17 18:42:32 +0200 |
commit | 73e8828566404e864170688dfb4fd530a83f8add (patch) | |
tree | 2f7e96caf71fd29cfef765f71d951fe7e326f3f4 /src/java/com | |
parent | 43b672e66b2392e1d11b7a4f0d15c3794921c9c8 (diff) |
Minor revert of clone replacement w/ copt-ctor of commit d7fb6a7bcfbd2d5ac452abdcdd31fb4d71441c70
clone of ArrayList is more shallow than it's clone operation (?)
Diffstat (limited to 'src/java/com')
3 files changed, 7 insertions, 4 deletions
diff --git a/src/java/com/jogamp/gluegen/cgram/types/CompoundType.java b/src/java/com/jogamp/gluegen/cgram/types/CompoundType.java index 746212d..8893283 100644 --- a/src/java/com/jogamp/gluegen/cgram/types/CompoundType.java +++ b/src/java/com/jogamp/gluegen/cgram/types/CompoundType.java @@ -71,10 +71,11 @@ public abstract class CompoundType extends MemoryLayoutType implements Cloneable } } + @SuppressWarnings("unchecked") public Object clone() { CompoundType n = (CompoundType) super.clone(); if(null!=this.fields) { - n.fields = new ArrayList<Field>(this.fields); + n.fields = (ArrayList<Field>) this.fields.clone(); } return n; } diff --git a/src/java/com/jogamp/gluegen/cgram/types/EnumType.java b/src/java/com/jogamp/gluegen/cgram/types/EnumType.java index d21774f..99d0f7e 100644 --- a/src/java/com/jogamp/gluegen/cgram/types/EnumType.java +++ b/src/java/com/jogamp/gluegen/cgram/types/EnumType.java @@ -85,13 +85,14 @@ public class EnumType extends IntType implements Cloneable { this.underlyingType = underlyingType; } + @SuppressWarnings("unchecked") public Object clone() { EnumType n = (EnumType) super.clone(); if(null!=this.underlyingType) { n.underlyingType = (IntType) this.underlyingType.clone(); } if(null!=this.enums) { - n.enums = new ArrayList<Enum>(this.enums); + n.enums = (ArrayList<Enum>) this.enums.clone(); } return n; } diff --git a/src/java/com/jogamp/gluegen/cgram/types/FunctionType.java b/src/java/com/jogamp/gluegen/cgram/types/FunctionType.java index fcaf97b..ca625cb 100644 --- a/src/java/com/jogamp/gluegen/cgram/types/FunctionType.java +++ b/src/java/com/jogamp/gluegen/cgram/types/FunctionType.java @@ -54,13 +54,14 @@ public class FunctionType extends Type implements Cloneable { this.returnType = returnType; } + @SuppressWarnings("unchecked") public Object clone() { FunctionType n = (FunctionType) super.clone(); if(null!=this.argumentTypes) { - n.argumentTypes = new ArrayList<Type>(this.argumentTypes); + n.argumentTypes = (ArrayList<Type>) this.argumentTypes.clone(); } if(null!=this.argumentNames) { - n.argumentNames = new ArrayList<String>(this.argumentNames); + n.argumentNames = (ArrayList<String>) this.argumentNames.clone(); } return n; } |