|
|
@@ -892,14 +892,20 @@ int CIDCertFSM::ReadAndScan(SpReqAnsContext<IDCert_ReadAndScan_Req, IDCert_ReadA
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
+ Dbg("pos before eject:%d", pos);
|
|
|
switch (pos)
|
|
|
{
|
|
|
case 1:
|
|
|
+
|
|
|
+ case 2:
|
|
|
eErr1 = m_hDevHelper->IDCerRFControl(false);
|
|
|
if (eErr1 != Error_Succeed)
|
|
|
+ {
|
|
|
+ Dbg("exec IDCerRFControl(false) failed, force eject...");
|
|
|
m_hDevHelper->ForceIDEject();
|
|
|
- break;
|
|
|
- case 2:
|
|
|
+ }
|
|
|
+ else
|
|
|
+ Dbg("exec IDCerRFControl(false) succ.");
|
|
|
break;
|
|
|
case 0:
|
|
|
default:
|
|
|
@@ -909,7 +915,7 @@ int CIDCertFSM::ReadAndScan(SpReqAnsContext<IDCert_ReadAndScan_Req, IDCert_ReadA
|
|
|
eErr1 = m_hDevHelper->QueryCardPos(pos);
|
|
|
if (eErr1 == Error_Succeed)
|
|
|
{
|
|
|
- Dbg("pos:%d", pos);
|
|
|
+ Dbg("pos after eject:%d", pos);
|
|
|
/*if (pos == 2)
|
|
|
return 4;*/
|
|
|
}
|