From d16c4b1a166ea5413487d3935c385ee82f560e81 Mon Sep 17 00:00:00 2001 From: Edwin Steiner Date: Fri, 16 Feb 2007 19:19:11 +0000 Subject: [PATCH] re PR classpath/28652 (JBoss fails to start due class cast exception in the management classes) 2006-10-14 Edwin Steiner PR classpath/28652: * javax/management/MBeanInfo.java (MBeanInfo): Use clone to duplicate the arrays in order to preserve the array type. From-SVN: r122050 --- libjava/classpath/ChangeLog | 7 +++++ .../classpath/javax/management/MBeanInfo.java | 24 ++++++------------ .../lib/javax/management/MBeanInfo.class | Bin 4188 -> 4037 bytes 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/libjava/classpath/ChangeLog b/libjava/classpath/ChangeLog index 577fa677225..228878860b3 100644 --- a/libjava/classpath/ChangeLog +++ b/libjava/classpath/ChangeLog @@ -1,3 +1,10 @@ +2006-10-14 Edwin Steiner + + PR classpath/28652: + * javax/management/MBeanInfo.java (MBeanInfo): + Use clone to duplicate the arrays in order to + preserve the array type. + 2007-02-16 Andrew Haley * gnu/java/lang/management/MemoryMXBeanImpl.java, diff --git a/libjava/classpath/javax/management/MBeanInfo.java b/libjava/classpath/javax/management/MBeanInfo.java index d30de0499aa..64e627f1b19 100644 --- a/libjava/classpath/javax/management/MBeanInfo.java +++ b/libjava/classpath/javax/management/MBeanInfo.java @@ -160,34 +160,26 @@ public class MBeanInfo { className = name; description = desc; + if (attribs == null) attributes = new MBeanAttributeInfo[0]; else - { - attributes = new MBeanAttributeInfo[attribs.length]; - System.arraycopy(attribs, 0, attributes, 0, attribs.length); - } + attributes = (MBeanAttributeInfo[]) attribs.clone(); + if (cons == null) constructors = new MBeanConstructorInfo[0]; else - { - constructors = new MBeanConstructorInfo[cons.length]; - System.arraycopy(cons, 0, constructors, 0, cons.length); - } + constructors = (MBeanConstructorInfo[]) cons.clone(); + if (ops == null) operations = new MBeanOperationInfo[0]; else - { - operations = new MBeanOperationInfo[ops.length]; - System.arraycopy(ops, 0, operations, 0, ops.length); - } + operations = (MBeanOperationInfo[]) ops.clone(); + if (notifs == null) notifications = new MBeanNotificationInfo[0]; else - { - notifications = new MBeanNotificationInfo[notifs.length]; - System.arraycopy(notifs, 0, notifications, 0, notifs.length); - } + notifications = (MBeanNotificationInfo[]) notifs.clone(); } /** diff --git a/libjava/classpath/lib/javax/management/MBeanInfo.class b/libjava/classpath/lib/javax/management/MBeanInfo.class index 9af293287083709b83ba550c120af0bd314138da..956226eece10bd8508ce6eb35b7d9dbca3910b87 100644 GIT binary patch literal 4037 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