Specify charset when constructing InputStreamReader

ErrorProne warns [1] about implicit use of the platform default charset,
which can result in differing behaviour between JVM executions or
incorrect behavior if the encoding of the data source doesn't match
expectations.

[1] http://errorprone.info/bugpattern/DefaultCharset

Change-Id: I0fd489d352170339c3867355cd24324dfdbd4b59
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
This commit is contained in:
David Pursehouse 2018-08-29 13:49:35 +09:00
parent c9e4359c7c
commit a3cb474c94
5 changed files with 8 additions and 5 deletions

View File

@ -221,7 +221,7 @@ private Map<String, LfsPointer> requestBatchUpload(HttpConnection api,
private void uploadContents(HttpConnection api,
Map<String, LfsPointer> oid2ptr) throws IOException {
try (JsonReader reader = new JsonReader(
new InputStreamReader(api.getInputStream()))) {
new InputStreamReader(api.getInputStream(), CHARSET))) {
for (Protocol.ObjectInfo o : parseObjects(reader)) {
if (o.actions == null) {
continue;

View File

@ -179,7 +179,8 @@ public static Collection<Path> downloadLfsResource(Lfs lfs, Repository db,
Integer.valueOf(responseCode)));
}
try (JsonReader reader = new JsonReader(
new InputStreamReader(lfsServerConn.getInputStream()))) {
new InputStreamReader(lfsServerConn.getInputStream(),
CHARSET))) {
Protocol.Response resp = gson.fromJson(reader,
Protocol.Response.class);
for (Protocol.ObjectInfo o : resp.objects) {

View File

@ -170,7 +170,7 @@ private void copy(InputStream from, File to) throws IOException {
private String readStream(InputStream stream) throws IOException {
try (BufferedReader in = new BufferedReader(
new InputStreamReader(stream))) {
new InputStreamReader(stream, CHARSET))) {
StringBuilder out = new StringBuilder();
String line;
while ((line = in.readLine()) != null) {

View File

@ -42,6 +42,8 @@
*/
package org.eclipse.jgit.merge;
import static org.eclipse.jgit.lib.Constants.CHARSET;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@ -881,7 +883,7 @@ private String contentAsString(Repository r, ObjectId treeId, String path)
StringBuilder result = new StringBuilder();
ObjectReader or = r.newObjectReader();
try (BufferedReader br = new BufferedReader(
new InputStreamReader(or.open(blobId).openStream()))) {
new InputStreamReader(or.open(blobId).openStream(), CHARSET))) {
String line;
boolean first = true;
while ((line = br.readLine()) != null) {

View File

@ -420,7 +420,7 @@ static String publicAddress() throws Exception {
c.setConnectTimeout(500);
c.setReadTimeout(500);
try (BufferedReader reader = new BufferedReader(
new InputStreamReader(c.getInputStream()))) {
new InputStreamReader(c.getInputStream(), CHARSET))) {
return reader.readLine();
}
} catch (UnknownHostException | SocketTimeoutException e) {