From: Taq <ta...@us...> - 2008-03-28 17:49:32
|
Update of /cvsroot/jfreechart/jcommon/source/org/jfree/util In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv27250/source/org/jfree/util Modified Files: ObjectUtilities.java Log Message: Fixes for crashes if a security-manager was defined to prevent access to the classloader. Now we fall back to some sensible default. Index: ObjectUtilities.java =================================================================== RCS file: /cvsroot/jfreechart/jcommon/source/org/jfree/util/ObjectUtilities.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** ObjectUtilities.java 2 Nov 2007 17:50:37 -0000 1.19 --- ObjectUtilities.java 28 Mar 2008 17:49:29 -0000 1.20 *************** *** 439,455 **** public static boolean isJDK14() { ! final ClassLoader loader = getClassLoader(ObjectUtilities.class); ! if (loader != null) { ! try { ! loader.loadClass("java.util.RandomAccess"); ! return true; ! } ! catch (ClassNotFoundException e) { ! return false; ! } ! catch(Exception e) { ! // do nothing, but do not crash ... ! } } // OK, the quick and dirty, but secure way failed. Lets try it // using the standard way. --- 439,461 ---- public static boolean isJDK14() { ! try { ! final ClassLoader loader = getClassLoader(ObjectUtilities.class); ! if (loader != null) { ! try { ! loader.loadClass("java.util.RandomAccess"); ! return true; ! } ! catch (ClassNotFoundException e) { ! return false; ! } ! catch(Exception e) { ! // do nothing, but do not crash ... ! } ! } ! } ! catch (Exception e) { ! // cant do anything about it, we have to accept and ignore it .. } + // OK, the quick and dirty, but secure way failed. Lets try it // using the standard way. *************** *** 479,483 **** final ArrayList versions = new ArrayList(); ! StringTokenizer strtok = new StringTokenizer(version, "."); while (strtok.hasMoreTokens()) { --- 485,489 ---- final ArrayList versions = new ArrayList(); ! final StringTokenizer strtok = new StringTokenizer(version, "."); while (strtok.hasMoreTokens()) { |