diff --git a/app/src/main/java/protect/card_locker/importexport/CatimaImporter.java b/app/src/main/java/protect/card_locker/importexport/CatimaImporter.java index a6567dd44..b819ab858 100644 --- a/app/src/main/java/protect/card_locker/importexport/CatimaImporter.java +++ b/app/src/main/java/protect/card_locker/importexport/CatimaImporter.java @@ -459,8 +459,11 @@ public class CatimaImporter implements Importer { barcodeType = CatimaBarcode.fromName(unparsedBarcodeType); } + // Barcode encoding information is only supported since Catima 2.41.0, so old exports will lack this field + // Database migration 19 forcing ISO-8859-1 on all cards, so we should treat imports from old Catima versions the same and force ISO-8859-1 there too + // This limits the risk of breaking cards when importing an old database backup Charset barcodeEncoding = null; - String unparsedBarcodeEncoding = CSVHelpers.extractString(DBHelper.LoyaltyCardDbIds.BARCODE_ENCODING, record, ""); + String unparsedBarcodeEncoding = CSVHelpers.extractString(DBHelper.LoyaltyCardDbIds.BARCODE_ENCODING, record, "ISO-8859-1"); if (!unparsedBarcodeEncoding.isEmpty()) { barcodeEncoding = Charset.forName(unparsedBarcodeEncoding); }