changeset 344:97b92cd48af0

Merge
author asaha
date Thu, 15 Sep 2011 12:37:24 -0700
parents 9ef47d349684 (current diff) 07247d9e7778 (diff)
children 5d83a0a12497
files .hgtags
diffstat 2 files changed, 13 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Wed Sep 14 22:11:07 2011 -0700
+++ b/.hgtags	Thu Sep 15 12:37:24 2011 -0700
@@ -121,7 +121,11 @@
 7033a5756ad552d88114594d8e2d2e4dc2c05963 jdk7-b144
 77ec0541aa2aa4da27e9e385a118a2e51e7fca24 jdk7-b145
 770227a4087e4e401fe87ccd19738440111c3948 jdk7-b146
+36f0efbc66ef8ace3cca8aa8d0c88f3334080f8a jdk7u1-b01
 73323cb3396260d93e0ab731fd2d431096ceed0f jdk7-b147
+9515a2d034b4727c11aeea36354a549fbc469c4f jdk7u1-b02
+dd71cb354c573c1addcda269a7dd9144bfce9587 jdk7u1-b03
+eaee830124aa453627591d8f9eccb39d7e040876 jdk7u1-b04
 960011ba4bf209a567d33f739b515acca7bb44b7 jdk7u2-b01
 e1a1c0d722646ef1430cdaa91c9c2057aa4491fa jdk7u2-b04
 391d8aa6f432178fc82da63c07909cb70a0af7df jdk7u2-b05
--- a/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java	Wed Sep 14 22:11:07 2011 -0700
+++ b/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java	Thu Sep 15 12:37:24 2011 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2243,6 +2243,10 @@
                 }
 
                 try {
+                    Class fieldCl = fields[i].getClazz();
+                    if (objectValue != null && !fieldCl.isInstance(objectValue)) {
+                        throw new IllegalArgumentException();
+                    }
                     bridge.putObject( o, fields[i].getFieldID(), objectValue ) ;
                     // reflective code: fields[i].getField().set( o, objectValue ) ;
                 } catch (IllegalArgumentException e) {
@@ -2553,6 +2557,10 @@
     {
         try {
             Field fld = c.getDeclaredField( fieldName ) ;
+            Class fieldCl = fld.getType();
+            if(v != null && !fieldCl.isInstance(v)) {
+                throw new Exception();
+            }
             long key = bridge.objectFieldOffset( fld ) ;
             bridge.putObject( o, key, v ) ;
         } catch (Exception e) {