X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Fjvcard%2Ftui%2Fpanes%2FContactDetails.java;h=090cf142dbbaf65fa717f5e9adae73b75100a1d9;hb=1c03abafc3987d93fa682e7b8758e51bed8a4faf;hp=2a69e41db2c64462d55a24449980c6be2672fab9;hpb=176a83279a5aafb7e44cc7c34bf78f0bc35225fe;p=jvcard.git diff --git a/src/be/nikiroo/jvcard/tui/panes/ContactDetails.java b/src/be/nikiroo/jvcard/tui/panes/ContactDetails.java index 2a69e41..090cf14 100644 --- a/src/be/nikiroo/jvcard/tui/panes/ContactDetails.java +++ b/src/be/nikiroo/jvcard/tui/panes/ContactDetails.java @@ -1,11 +1,12 @@ package be.nikiroo.jvcard.tui.panes; import java.awt.Image; -import java.util.Base64; +import java.io.ByteArrayInputStream; import java.util.LinkedList; import java.util.List; -import javax.swing.ImageIcon; +import javax.imageio.ImageIO; +import javax.xml.bind.DatatypeConverter; import be.nikiroo.jvcard.Contact; import be.nikiroo.jvcard.Data; @@ -116,8 +117,15 @@ public class ContactDetails extends MainContent { if (encoding != null && encoding.getValue() != null && encoding.getValue().equalsIgnoreCase("b")) { - image = new ImageIcon(Base64.getDecoder().decode( - photo.getValue())).getImage(); + try { + image = ImageIO.read(new ByteArrayInputStream( + DatatypeConverter.parseBase64Binary(photo + .getValue()))); + image.toString(); + } catch (Exception e) { + System.err.println("Cannot parse image for contact: " + + contact.getPreferredDataValue("UID")); + } } } }