From fe464a76d8fc858be971dbb5e67b1d22fd925347 Mon Sep 17 00:00:00 2001 From: "dujin.cha" Date: Tue, 22 Nov 2011 12:13:33 +0900 Subject: [PATCH] [Prime K] Fix gabage character issue Korean characters show up as gabage characters in Music player. Reason : MTP service does not set the locale for the MediaScanner Solution : Set locale when MtpDatabase creates MediaScanner. Bug ID : 5567433 Signed-off-by: dujin.cha Change-Id: I4bfe5f603c113170d45bd57a8709c21c665e260b --- media/java/android/mtp/MtpDatabase.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) mode change 100644 => 100755 media/java/android/mtp/MtpDatabase.java diff --git a/media/java/android/mtp/MtpDatabase.java b/media/java/android/mtp/MtpDatabase.java old mode 100644 new mode 100755 index 4e271c7bf5688..98617d200f548 --- a/media/java/android/mtp/MtpDatabase.java +++ b/media/java/android/mtp/MtpDatabase.java @@ -38,6 +38,7 @@ import android.view.WindowManager; import java.io.File; import java.util.HashMap; +import java.util.Locale; /** * {@hide} @@ -120,6 +121,20 @@ public class MtpDatabase { mMediaStoragePath = storagePath; mObjectsUri = Files.getMtpObjectsUri(volumeName); mMediaScanner = new MediaScanner(context); + + // Set locale to MediaScanner. + Locale locale = context.getResources().getConfiguration().locale; + if (locale != null) { + String language = locale.getLanguage(); + String country = locale.getCountry(); + if (language != null) { + if (country != null) { + mMediaScanner.setLocale(language + "_" + country); + } else { + mMediaScanner.setLocale(language); + } + } + } initDeviceProperties(context); }