catch and ignore SwMatchError on probing for AID's
When probing applications on a card by running select_adf_by_aid()
SwMatchError exceptions indicating the non exsistance of that
application on the card should be ignored.
Change-Id: I3aa7deaf46bdf352a201c3089b3714405a06f281
diff --git a/pySim/filesystem.py b/pySim/filesystem.py
index dfe1677..32688db 100644
--- a/pySim/filesystem.py
+++ b/pySim/filesystem.py
@@ -1113,11 +1113,13 @@
# Some card applications may not be registered in EF.DIR, we will actively
# probe for those applications
for f in set(apps_profile) - set(apps_taken):
- data, sw = self.card.select_adf_by_aid(f.aid)
- if sw == "9000":
- print(" %s: %s" % (f.name, f.aid))
- apps_taken.append(f)
-
+ try:
+ data, sw = self.card.select_adf_by_aid(f.aid)
+ if sw == "9000":
+ print(" %s: %s" % (f.name, f.aid))
+ apps_taken.append(f)
+ except SwMatchError:
+ pass
return apps_taken
def reset(self, cmd_app=None) -> Hexstr: