char mnc_value[4] = {0,};
info("plmn_value = [%s]", plmn);
- g_strlcpy(mcc_value, plmn, 4);
- g_strlcpy(mnc_value, plmn+3, 4);
+ if (plmn != NULL && strlen(plmn) > 3) {
+ g_strlcpy(mcc_value, plmn, 4);
+ g_strlcpy(mnc_value, plmn + 3, 4);
+ }
modem_info->net_mcc = (unsigned long)atoi(mcc_value);
modem_info->net_mnc = (unsigned long)atoi(mnc_value);
return -1;
}
- if (0 == ret && plmn != NULL) {
+ if (0 == ret && plmn != NULL && strlen(plmn) > 3) {
char mcc_value[4] = {0,};
char mnc_value[4] = {0,};
info("plmn_value = [%s]", plmn);
g_strlcpy(mcc_value, plmn, 4);
- g_strlcpy(mnc_value, plmn+3, 4);
+ g_strlcpy(mnc_value, plmn + 3, 4);
*mcc = (unsigned long)atoi(mcc_value);
*mnc = (unsigned long)atoi(mnc_value);