summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/create-mcc-mnc-table.py8
-rw-r--r--src/MTS_IO_MccMncTable.cpp8
2 files changed, 12 insertions, 4 deletions
diff --git a/scripts/create-mcc-mnc-table.py b/scripts/create-mcc-mnc-table.py
index 761454c..cc30fef 100644
--- a/scripts/create-mcc-mnc-table.py
+++ b/scripts/create-mcc-mnc-table.py
@@ -43,9 +43,13 @@ print "}"
print ""
print "Json::Value MccMncTable::lookup(const std::string& sMcc, const std::string& sMnc) {"
print " uint32_t iMcc, iMnc;"
+print " std::string sNormalizedMnc = sMnc;"
print ' printTrace("[MCCMNC] MCCx[%s] MNCx[%s]", sMcc.c_str(), sMnc.c_str());'
-print " if(!MTS::Text::parseHex(iMcc, sMcc)) { return Json::Value::null; }"
-print " if(!MTS::Text::parseHex(iMnc, sMnc)) { return Json::Value::null; }"
+print " if (sMnc.length() == 2) {"
+print " sNormalizedMnc += 'f';"
+print " }"
+print " if (!MTS::Text::parseHex(iMcc, sMcc)) { return Json::Value::null; }"
+print " if (!MTS::Text::parseHex(iMnc, sNormalizedMnc)) { return Json::Value::null; }"
print ' printTrace("[MCCMNC] MCC0X[%d] MNC0X[%d]", iMcc, iMnc);'
print " if (m_mTable.count(iMcc)) {"
print " if(m_mTable[iMcc].count(iMnc)) {"
diff --git a/src/MTS_IO_MccMncTable.cpp b/src/MTS_IO_MccMncTable.cpp
index e375213..b187b86 100644
--- a/src/MTS_IO_MccMncTable.cpp
+++ b/src/MTS_IO_MccMncTable.cpp
@@ -53,9 +53,13 @@ MccMncTable::MccMncTable() {
Json::Value MccMncTable::lookup(const std::string& sMcc, const std::string& sMnc) {
uint32_t iMcc, iMnc;
+ std::string sNormalizedMnc = sMnc;
printTrace("[MCCMNC] MCCx[%s] MNCx[%s]", sMcc.c_str(), sMnc.c_str());
- if(!MTS::Text::parseHex(iMcc, sMcc)) { return Json::Value::null; }
- if(!MTS::Text::parseHex(iMnc, sMnc)) { return Json::Value::null; }
+ if (sMnc.length() == 2) {
+ sNormalizedMnc += 'f';
+ }
+ if (!MTS::Text::parseHex(iMcc, sMcc)) { return Json::Value::null; }
+ if (!MTS::Text::parseHex(iMnc, sNormalizedMnc)) { return Json::Value::null; }
printTrace("[MCCMNC] MCC0X[%d] MNC0X[%d]", iMcc, iMnc);
if (m_mTable.count(iMcc)) {
if(m_mTable[iMcc].count(iMnc)) {