equal
deleted
inserted
replaced
967 // invoke the class loader's defineClass method |
967 // invoke the class loader's defineClass method |
968 ClassLoader loader = lookupClass.getClassLoader(); |
968 ClassLoader loader = lookupClass.getClassLoader(); |
969 ProtectionDomain pd = (loader != null) ? lookupClassProtectionDomain() : null; |
969 ProtectionDomain pd = (loader != null) ? lookupClassProtectionDomain() : null; |
970 String source = "__Lookup_defineClass__"; |
970 String source = "__Lookup_defineClass__"; |
971 Class<?> clazz = SharedSecrets.getJavaLangAccess().defineClass(loader, cn, bytes, pd, source); |
971 Class<?> clazz = SharedSecrets.getJavaLangAccess().defineClass(loader, cn, bytes, pd, source); |
972 assert clazz.getClassLoader() == lookupClass.getClassLoader() |
|
973 && clazz.getPackageName().equals(lookupClass.getPackageName()) |
|
974 && protectionDomain(clazz) == lookupClassProtectionDomain(); |
|
975 return clazz; |
972 return clazz; |
976 } |
973 } |
977 |
974 |
978 private ProtectionDomain lookupClassProtectionDomain() { |
975 private ProtectionDomain lookupClassProtectionDomain() { |
979 ProtectionDomain pd = cachedProtectionDomain; |
976 ProtectionDomain pd = cachedProtectionDomain; |