From f32954aebe2566b38a6abdf9187434a64995a209 Mon Sep 17 00:00:00 2001 From: Karim Abou Zeid Date: Sat, 16 Jun 2018 11:21:57 +0200 Subject: [PATCH] Fix a crash for artist names which clash with *nix file names. --- .../gramophone/util/CustomArtistImageUtil.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/kabouzeid/gramophone/util/CustomArtistImageUtil.java b/app/src/main/java/com/kabouzeid/gramophone/util/CustomArtistImageUtil.java index d46cfbc5..05388751 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/util/CustomArtistImageUtil.java +++ b/app/src/main/java/com/kabouzeid/gramophone/util/CustomArtistImageUtil.java @@ -22,6 +22,8 @@ import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; import java.util.Locale; /** @@ -122,7 +124,13 @@ public class CustomArtistImageUtil { } private static String getFileName(Artist artist) { - return String.format(Locale.US, "#%d#%s.jpeg", artist.getId(), artist.getName()); + try { + return String.format(Locale.US, "#%d#%s.jpeg", artist.getId(), URLEncoder.encode(artist.getName(), "UTF-8")); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + // UTF-8 should be always valid + return null; + } } public static File getFile(Artist artist) {