Index: trunk/quest-misc/src/main/java/de/ugoe/cs/tasktree/keyboardmaps/KeyboardMap.java
===================================================================
--- trunk/quest-misc/src/main/java/de/ugoe/cs/tasktree/keyboardmaps/KeyboardMap.java	(revision 558)
+++ trunk/quest-misc/src/main/java/de/ugoe/cs/tasktree/keyboardmaps/KeyboardMap.java	(revision 563)
@@ -11,4 +11,5 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -164,5 +165,13 @@
         throws IllegalArgumentException
     {
-        BufferedReader in = new BufferedReader(new InputStreamReader(stream));
+        BufferedReader in = null;
+        try {
+            in = new BufferedReader(new InputStreamReader(stream, "UTF-8"));
+        }
+        catch (UnsupportedEncodingException e) {
+            LOG.log(Level.WARNING, "no keyboard map available for locale " + locale, e);
+            throw new IllegalArgumentException
+                ("provided stream can not be read due to invalid encoding", e);
+        }
 
         try {
