@@ -198,12 +198,25 @@ static public List<ParseResult> retrieveBarcodesFromPkPass(Context context, Uri
198
198
199
199
List <String > locales = pkpassParser .listLocales ();
200
200
if (locales .isEmpty ()) {
201
- return Collections .singletonList (new ParseResult (ParseResultType .FULL , pkpassParser .toLoyaltyCard (null )));
201
+ try {
202
+ return Collections .singletonList (new ParseResult (ParseResultType .FULL , pkpassParser .toLoyaltyCard (null )));
203
+ } catch (Exception e ) {
204
+ Log .e (TAG , "Error calling toLoyaltyCard on pkpass file" , e );
205
+ Toast .makeText (context , R .string .errorReadingFile , Toast .LENGTH_LONG ).show ();
206
+ return new ArrayList <>();
207
+ }
202
208
}
203
209
204
210
List <ParseResult > parseResultList = new ArrayList <>();
205
211
for (String locale : locales ) {
206
- ParseResult parseResult = new ParseResult (ParseResultType .FULL , pkpassParser .toLoyaltyCard (locale ));
212
+ ParseResult parseResult ;
213
+ try {
214
+ parseResult = new ParseResult (ParseResultType .FULL , pkpassParser .toLoyaltyCard (locale ));
215
+ } catch (Exception e ) {
216
+ Log .e (TAG , "Error calling toLoyaltyCard on pkpass file" , e );
217
+ Toast .makeText (context , R .string .errorReadingFile , Toast .LENGTH_LONG ).show ();
218
+ return new ArrayList <>();
219
+ }
207
220
parseResult .setNote (locale );
208
221
parseResultList .add (parseResult );
209
222
}
0 commit comments