--- branches/KDE/3.5/kdebase/kioslave/media/mediamanager/halbackend.cpp	2007/11/22 12:16:39	740044
+++ branches/KDE/3.5/kdebase/kioslave/media/mediamanager/halbackend.cpp	2008/03/14 19:28:14	785706
@@ -849,6 +849,13 @@
         result << tmp;
     }
 
+	if ( valids.contains("locale") )
+	{
+		value = config.readBoolEntry( "locale", true );
+		tmp = QString( "locale=%1" ).arg( value ? "true" : "false" );
+		result << tmp;
+	}
+
     if (valids.contains("utf8"))
     {
         value = config.readBoolEntry("utf8", true);
@@ -922,7 +929,7 @@
 
     QMap<QString,QString> valids = MediaManagerUtils::splitOptions(options);
 
-    const char *names[] = { "ro", "quiet", "atime", "uid", "utf8", "flush", "sync", 0 };
+    const char *names[] = { "ro", "quiet", "atime", "uid", "utf8", "flush", "sync", "locale", 0 };
     for (int index = 0; names[index]; ++index)
         if (valids.contains(names[index]))
             config.writeEntry(names[index], valids[names[index]] == "true");
@@ -942,6 +949,10 @@
         config.writeEntry("automount", valids["automount"]);
     }
 
+	if (valids.contains("locale") ) {
+		config.writeEntry("locale", valids["locale"]);
+	}
+
     return true;
 }
 
@@ -1140,6 +1151,11 @@
         soptions << QString("uid=%1").arg(getuid());
     }
 
+    if (valids["locale"] == "true")
+	{
+		soptions << QString("locale=%1").arg( KGlobal::locale()->language() ); 
+	}
+
     if (valids["ro"] == "true")
         soptions << "ro";
 
