CoverityFix CID:1350844 Dubious method used 02/20402/2
Nimish Kapoor [Tue, 31 Jul 2018 17:25:35 +0000 (22:25 +0530)]
Found a call to a method which will perform a byte to String (or String to byte)
conversion, and will assume that the default platform encoding is suitable. This
will cause the application behaviour to vary between platforms. Use an
alternative API and specify a charset name or Charset object explicitly.
https://stackoverflow.com/questions/696626/java-filereader-encoding-issue

Change-Id: Ifa44be847d98bf13b53bc22756f9f736b511d6d2

scilab/modules/helptools/src/java/org/scilab/modules/helptools/SciDocConfiguration.java

index 0bff1b5..cef6d42 100644 (file)
@@ -19,6 +19,8 @@ import java.io.BufferedReader;
 import java.io.FileReader;
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.FileInputStream;
 import java.util.regex.Matcher;
 
 import javax.xml.parsers.DocumentBuilderFactory;
@@ -147,7 +149,7 @@ public class SciDocConfiguration {
     private static String getVersion(String ver) {
         String ret = "";
         if (ver == null || ver.isEmpty()) {
-          try (BufferedReader reader = new BufferedReader(new FileReader(VERSION))) {
+          try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(VERSION), "UTF-8"))) {
                ret = reader.readLine().split("=")[1];
             } catch (IOException e) {
                 System.err.println(e);