[Bugfix][API-478][Sim/Call/Data]Sim, CALL, and DATA modules repeatedly call initialization, logout, and one of the module's other apis, T800 will block
Change-Id: I3d98c8d7633ec1314d04a107342b9a6a580cf0a5
diff --git a/lib/liblynq-sim/src/lynq_sim.cpp b/lib/liblynq-sim/src/lynq_sim.cpp
index b9f12ea..76403e1 100755
--- a/lib/liblynq-sim/src/lynq_sim.cpp
+++ b/lib/liblynq-sim/src/lynq_sim.cpp
@@ -136,6 +136,10 @@
/*If you need to use any API under lynq_sim, you mustfirst call the lynq_sim_init() function to initialize these functions.*/
int lynq_get_sim_status(int *card_status)
{
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(card_status == NULL)
return ret;
@@ -181,6 +185,10 @@
int lynq_get_imsi(char buf[])
{
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(buf == NULL)
return ret;
@@ -230,6 +238,10 @@
/*add by lei*/
int lynq_get_iccid(char buf[]){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(buf == NULL)
return ret;
@@ -274,6 +286,10 @@
}
int lynq_enable_pin(char *pin){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(pin == NULL)
return ret;
@@ -316,6 +332,10 @@
}
int lynq_disable_pin(char *pin){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(pin == NULL)
return ret;
@@ -355,6 +375,10 @@
}
int lynq_query_pin_lock(char *pin,int buf[]){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(pin == NULL)
return ret;
@@ -405,6 +429,10 @@
}
int lynq_verify_pin(char *pin){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(pin == NULL)
return ret;
@@ -445,6 +473,10 @@
}
int lynq_change_pin(char *old_pin, char *new_pin){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(old_pin == NULL || new_pin == NULL)
return ret;
@@ -489,6 +521,10 @@
}
int lynq_unlock_pin(char *puk, char *pin){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(puk == NULL || pin == NULL)
return ret;
@@ -587,6 +623,10 @@
}
int lynq_query_phone_number(char buf[]){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(buf == NULL)
return ret;
@@ -654,7 +694,11 @@
}
int lynq_get_imei(char buf[])
-{
+{
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(buf == NULL)
return ret;
@@ -714,6 +758,10 @@
}
int lynq_switch_card(int slot){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(!judge(slot))
return ret;
@@ -734,6 +782,10 @@
}
int lynq_screen(int num){
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(!judge(num))
return ret;
@@ -817,7 +869,11 @@
}
int lynq_req_sim_io(int list[5], char *path, char *data, char *pin2, char *aidPtr, int sw[2], char *simResponse)
-{
+{
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
int ret = -1;
if(judge_illegal(list, path, data, pin2, aidPtr, sw, simResponse))
{