[prev in list] [next in list] [prev in thread] [next in thread]
List: bcel-dev
Subject: svn commit: r153380 - in
From: tcurdt () apache ! org
Date: 2005-02-11 10:23:39
Message-ID: 20050211102339.869.qmail () minotaur ! apache ! org
[Download RAW message or body]
Author: tcurdt
Date: Fri Feb 11 02:23:36 2005
New Revision: 153380
URL: http://svn.apache.org/viewcvs?view=rev&rev=153380
Log:
fixed the deep cloning
Modified:
jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Code.java
jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Deprecated.java
jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/ExceptionTable.java
jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Synthetic.java
jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Unknown.java
Modified: jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Code.java
URL: http://svn.apache.org/viewcvs/jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Code.java?view=diff&r1=153379&r2=153380
==============================================================================
--- jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Code.java (original)
+++ jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Code.java Fri Feb 11 \
02:23:36 2005 @@ -320,8 +320,13 @@
* @param constant_pool the constant pool to duplicate
*/
public Attribute copy(ConstantPool constant_pool) {
- Code c = (Code)clone();
- c.code = code.clone();
+ Code c = (Code) clone();
+
+ if (code != null) {
+ c.code = new byte[code.length];
+ System.arraycopy(code, 0, c.code, 0, code.length);
+ }
+
c.constant_pool = constant_pool;
c.exception_table = new CodeException[exception_table_length];
Modified: jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Deprecated.java
URL: http://svn.apache.org/viewcvs/jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Deprecated.java?view=diff&r1=153379&r2=153380
==============================================================================
--- jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Deprecated.java (original)
+++ jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Deprecated.java Fri Feb 11 \
02:23:36 2005 @@ -123,8 +123,10 @@
public Attribute copy(ConstantPool constant_pool) {
Deprecated c = (Deprecated)clone();
- if(bytes != null)
- c.bytes = bytes.clone();
+ if (bytes != null) {
+ c.bytes = new byte[bytes.length];
+ System.arraycopy(bytes, 0, c.bytes, 0, bytes.length);
+ }
c.constant_pool = constant_pool;
return c;
Modified: jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/ExceptionTable.java
URL: http://svn.apache.org/viewcvs/jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/ExceptionTable.java?view=diff&r1=153379&r2=153380
==============================================================================
--- jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/ExceptionTable.java \
(original)
+++ jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/ExceptionTable.java Fri Feb \
11 02:23:36 2005 @@ -158,7 +158,12 @@
*/
public Attribute copy(ConstantPool constant_pool) {
ExceptionTable c = (ExceptionTable)clone();
- c.exception_index_table = exception_index_table.clone();
+
+ if (exception_index_table != null) {
+ c.exception_index_table = new int[exception_index_table.length];
+ System.arraycopy(exception_index_table, 0, c.exception_index_table, 0, \
exception_index_table.length); + }
+
c.constant_pool = constant_pool;
return c;
}
Modified: jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Synthetic.java
URL: http://svn.apache.org/viewcvs/jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Synthetic.java?view=diff&r1=153379&r2=153380
==============================================================================
--- jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Synthetic.java (original)
+++ jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Synthetic.java Fri Feb 11 \
02:23:36 2005 @@ -130,8 +130,10 @@
public Attribute copy(ConstantPool constant_pool) {
Synthetic c = (Synthetic)clone();
- if(bytes != null)
- c.bytes = bytes.clone();
+ if (bytes != null) {
+ c.bytes = new byte[bytes.length];
+ System.arraycopy(bytes, 0, c.bytes, 0, bytes.length);
+ }
c.constant_pool = constant_pool;
return c;
Modified: jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Unknown.java
URL: http://svn.apache.org/viewcvs/jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Unknown.java?view=diff&r1=153379&r2=153380
==============================================================================
--- jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Unknown.java (original)
+++ jakarta/bcel/trunk/src/java/org/apache/bcel/classfile/Unknown.java Fri Feb 11 \
02:23:36 2005 @@ -167,8 +167,10 @@
public Attribute copy(ConstantPool constant_pool) {
Unknown c = (Unknown)clone();
- if(bytes != null)
- c.bytes = bytes.clone();
+ if (bytes != null) {
+ c.bytes = new byte[bytes.length];
+ System.arraycopy(bytes, 0, c.bytes, 0, bytes.length);
+ }
c.constant_pool = constant_pool;
return c;
---------------------------------------------------------------------
To unsubscribe, e-mail: bcel-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: bcel-dev-help@jakarta.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic