8044274: Proper property processing

Reviewed-by: okutsu
This commit is contained in:
Naoto Sato 2014-06-24 14:00:01 -07:00
parent cc10c54160
commit 47d69e2546

View File

@ -2646,7 +2646,10 @@ public abstract class ResourceBundle {
} catch (ClassNotFoundException e) {
}
} else if (format.equals("java.properties")) {
final String resourceName = toResourceName(bundleName, "properties");
final String resourceName = toResourceName0(bundleName, "properties");
if (resourceName == null) {
return bundle;
}
final ClassLoader classLoader = loader;
final boolean reloadFlag = reload;
InputStream stream = null;
@ -2800,7 +2803,10 @@ public abstract class ResourceBundle {
}
boolean result = false;
try {
String resourceName = toResourceName(toBundleName(baseName, locale), format);
String resourceName = toResourceName0(toBundleName(baseName, locale), format);
if (resourceName == null) {
return result;
}
URL url = loader.getResource(resourceName);
if (url != null) {
long lastModified = 0;
@ -2934,6 +2940,15 @@ public abstract class ResourceBundle {
sb.append(bundleName.replace('.', '/')).append('.').append(suffix);
return sb.toString();
}
private String toResourceName0(String bundleName, String suffix) {
// application protocol check
if (bundleName.contains("://")) {
return null;
} else {
return toResourceName(bundleName, suffix);
}
}
}
private static class SingleFormatControl extends Control {