summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2013-08-02 09:30:06 -0700
committerElliott Hughes <enh@google.com>2013-08-02 10:03:53 -0700
commitdcb1a58cf9d66b36de825dae2fa0cb0529e60680 (patch)
tree6be97085a3ea04c3801de7ae0a4e1ff2b2adc160
parentc67b2ed50226c4758d0fc1434d39f6add6a0a533 (diff)
downloadbase-dcb1a58cf9d66b36de825dae2fa0cb0529e60680.tar.gz
If media wants ASCII lowercasing, it needs to ask for it.
http://elliotth.blogspot.com/2012/01/beware-convenience-methods.html Use toLowerCase(Locale.ROOT) if you want ASCII for machine consumption, and use toLowerCase(Locale.getDefault()) if you want the user's locale's casing rules for human consumption. Bug: https://code.google.com/p/android/issues/detail?id=58359 Change-Id: Id9005a17e34217a81bef3b40031b9e2e6272f45d
-rw-r--r--media/java/android/media/MediaFile.java7
-rw-r--r--media/java/android/media/MediaScanner.java2
-rw-r--r--media/mca/filterpacks/java/android/filterpacks/text/ToUpperCase.java4
-rw-r--r--media/tests/CameraBrowser/src/com/android/camerabrowser/ObjectViewer.java3
4 files changed, 10 insertions, 6 deletions
diff --git a/media/java/android/media/MediaFile.java b/media/java/android/media/MediaFile.java
index 06d43a2cd60a..761ecca3b5b7 100644
--- a/media/java/android/media/MediaFile.java
+++ b/media/java/android/media/MediaFile.java
@@ -28,6 +28,7 @@ import android.mtp.MtpConstants;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.Locale;
/**
* MediaScanner helper class.
@@ -276,10 +277,10 @@ public class MediaFile {
}
public static MediaFileType getFileType(String path) {
- int lastDot = path.lastIndexOf(".");
+ int lastDot = path.lastIndexOf('.');
if (lastDot < 0)
return null;
- return sFileTypeMap.get(path.substring(lastDot + 1).toUpperCase());
+ return sFileTypeMap.get(path.substring(lastDot + 1).toUpperCase(Locale.ROOT));
}
public static boolean isMimeTypeMedia(String mimeType) {
@@ -325,7 +326,7 @@ public class MediaFile {
}
int lastDot = fileName.lastIndexOf('.');
if (lastDot > 0) {
- String extension = fileName.substring(lastDot + 1).toUpperCase();
+ String extension = fileName.substring(lastDot + 1).toUpperCase(Locale.ROOT);
Integer value = sFileTypeToFormatMap.get(extension);
if (value != null) {
return value.intValue();
diff --git a/media/java/android/media/MediaScanner.java b/media/java/android/media/MediaScanner.java
index 726e6de4fb93..de3041ed5208 100644
--- a/media/java/android/media/MediaScanner.java
+++ b/media/java/android/media/MediaScanner.java
@@ -540,7 +540,7 @@ public class MediaScanner
if (noMedia) {
result = endFile(entry, false, false, false, false, false);
} else {
- String lowpath = path.toLowerCase();
+ String lowpath = path.toLowerCase(Locale.ROOT);
boolean ringtones = (lowpath.indexOf(RINGTONES_DIR) > 0);
boolean notifications = (lowpath.indexOf(NOTIFICATIONS_DIR) > 0);
boolean alarms = (lowpath.indexOf(ALARMS_DIR) > 0);
diff --git a/media/mca/filterpacks/java/android/filterpacks/text/ToUpperCase.java b/media/mca/filterpacks/java/android/filterpacks/text/ToUpperCase.java
index 0cf34779d502..5ff0af16d309 100644
--- a/media/mca/filterpacks/java/android/filterpacks/text/ToUpperCase.java
+++ b/media/mca/filterpacks/java/android/filterpacks/text/ToUpperCase.java
@@ -23,6 +23,8 @@ import android.filterfw.core.Frame;
import android.filterfw.core.FrameFormat;
import android.filterfw.format.ObjectFormat;
+import java.util.Locale;
+
/**
* @hide
*/
@@ -47,7 +49,7 @@ public class ToUpperCase extends Filter {
String inputString = (String)input.getObjectValue();
Frame output = env.getFrameManager().newFrame(mOutputFormat);
- output.setObjectValue(inputString.toUpperCase());
+ output.setObjectValue(inputString.toUpperCase(Locale.getDefault()));
pushOutput("uppercase", output);
}
diff --git a/media/tests/CameraBrowser/src/com/android/camerabrowser/ObjectViewer.java b/media/tests/CameraBrowser/src/com/android/camerabrowser/ObjectViewer.java
index ef69c44fb36a..b288984a1354 100644
--- a/media/tests/CameraBrowser/src/com/android/camerabrowser/ObjectViewer.java
+++ b/media/tests/CameraBrowser/src/com/android/camerabrowser/ObjectViewer.java
@@ -37,6 +37,7 @@ import android.widget.Toast;
import java.io.File;
import java.util.Date;
+import java.util.Locale;
/**
* A view to display the properties of an object.
@@ -120,7 +121,7 @@ public class ObjectViewer extends Activity implements View.OnClickListener {
mFileName = info.getName();
view.setText(mFileName);
view = (TextView)findViewById(R.id.format);
- view.setText(Integer.toHexString(info.getFormat()).toUpperCase());
+ view.setText(Integer.toHexString(info.getFormat()).toUpperCase(Locale.ROOT));
view = (TextView)findViewById(R.id.size);
view.setText(Long.toString(info.getCompressedSize()));
view = (TextView)findViewById(R.id.thumb_width);