diff -r 1934667b0e2b -r 4b59561a31c0 cbsatplugin/atmisccmdplugin/src/atcommandparser.cpp --- a/cbsatplugin/atmisccmdplugin/src/atcommandparser.cpp Wed Sep 15 12:23:51 2010 +0300 +++ b/cbsatplugin/atmisccmdplugin/src/atcommandparser.cpp Wed Oct 13 14:43:49 2010 +0300 @@ -58,27 +58,7 @@ _LIT8(KAtCpin, "AT+CPIN"); _LIT8(KAtCusd, "AT+CUSD"); _LIT8(KAtCnum, "AT+CNUM"); - _LIT8(KAtCmee, "AT+CMEE"); - _LIT8(KAtHver, "AT^HVER"); - _LIT8(KAtCgsn, "AT+CGSN"); - _LIT8(KAtCgmr, "AT+CGMR"); - _LIT8(KAtCgmi, "AT+CGMI"); - _LIT8(KAtCmgw, "AT+CMGW"); - _LIT8(KAtCmgd, "AT+CMGD"); - _LIT8(KAtCmgf, "AT+CMGF"); - _LIT8(KAtiBase, "ATI"); - _LIT8(KAti0, "ATI0"); - _LIT8(KAti1, "ATI1"); - _LIT8(KAti2, "ATI2"); - _LIT8(KAti3, "ATI3"); - _LIT8(KAti4, "ATI4"); - _LIT8(KAtGmr, "AT+GMR"); - _LIT8(KAtGmi, "AT+GMI"); - _LIT8(KAtGsn, "AT+GSN"); - _LIT8(KAtCgmm, "AT+CGMM"); - _LIT8(KAtGmm, "AT+GMM"); - _LIT8(KAtScpbr, "AT^SCPBR"); - _LIT8(KAtScpbw, "AT^SCPBW"); + _LIT8(KAtCmee, "AT+CMEE"); Trace(KDebugPrintS, "token: ", &token); // Determine the AT command type @@ -110,89 +90,9 @@ { iCmdType = ECmdAtCnum; } - else if(!token.CompareF(KAtCmee)) + else if(!token.Compare(KAtCmee)) { iCmdType = ECmdAtCmee; - } - else if(!token.CompareF(KAtHver)) - { - iCmdType = ECmdAtHver; - } - else if(!token.CompareF(KAtCgsn)) - { - iCmdType = ECmdAtCgsn; - } - else if(!token.CompareF(KAtGsn)) - { - iCmdType = ECmdAtGsn; - } - else if(!token.CompareF(KAtCgmr)) - { - iCmdType = ECmdAtCgmr; - } - else if(!token.CompareF(KAtGmr)) - { - iCmdType = ECmdAtGmr; - } - else if(!token.CompareF(KAtCgmi)) - { - iCmdType = ECmdAtCgmi; - } - else if(!token.CompareF(KAtGmi)) - { - iCmdType = ECmdAtGmi; - } - else if(!token.CompareF(KAtCmgw)) - { - iCmdType = ECmdAtCmgw; - } - else if(!token.CompareF(KAtCmgd)) - { - iCmdType = ECmdAtCmgd; - } - else if(!token.CompareF(KAtCmgf)) - { - iCmdType = ECmdAtCmgf; - } - else if(!token.CompareF(KAtCgmm)) - { - iCmdType = ECmdAtCgmm; - } - else if(!token.CompareF(KAtGmm)) - { - iCmdType = ECmdAtGmm; - } - else if(!token.CompareF(KAtiBase)) - { - iCmdType = ECmdAtI; - } - else if(!token.CompareF(KAti0)) - { - iCmdType = ECmdAtI0; - } - else if(!token.CompareF(KAti1)) - { - iCmdType = ECmdAtI1; - } - else if(!token.CompareF(KAti2)) - { - iCmdType = ECmdAtI2; - } - else if(!token.CompareF(KAti3)) - { - iCmdType = ECmdAtI3; - } - else if(!token.CompareF(KAti4)) - { - iCmdType = ECmdAtI4; - } - else if(!token.CompareF(KAtScpbr)) - { - iCmdType = ECmdAtScpbr; - } - else if(!token.CompareF(KAtScpbw)) - { - iCmdType = ECmdAtScpbw; } else { @@ -254,8 +154,8 @@ if(!iCmd.Eos()) { chr = iCmd.Peek(); - while(!iCmd.Eos() && chr != ',' && !chr.IsControl()) - {// Stop at any comma or control character + while(!iCmd.Eos() && chr != ',' && !chr.IsSpace() && !chr.IsControl()) + {// Stop at any of those chars: comma, space or control iCmd.Inc(); chr = iCmd.Peek(); } @@ -264,30 +164,12 @@ // Extract the token at this point TPtrC8 retVal = iCmd.MarkedToken(); - //ignore all space characters at the end - if(retVal.Length() > 1) - { - TInt pos = retVal.Length() - 1; - for ( ; pos >= 0; pos-- ) - { - const TChar ch( retVal[pos] ); - if( !ch.IsSpace() ) - { - break; - } - } - retVal.Set( retVal.Mid( 0, pos + 1 ) ); - } - - // Skip comma, space and control chars - do - { - iCmd.Inc(); - chr = iCmd.Peek(); - } - while(!iCmd.Eos() && (chr.IsSpace() || chr.IsControl())); - + while(!iCmd.Eos() && (chr == ',' || chr.IsSpace() || chr.IsControl())) + { + iCmd.Inc(); + chr = iCmd.Peek(); + } TRACE_FUNC_EXIT return retVal; } @@ -328,21 +210,8 @@ } else { - //check if param contains only digits - TLex doesn't do that - for(TInt pos = param.Length() - 1; pos >= 0; pos--) - { - if(( param[pos] < '0' ) || ( param[pos] > '9' )) - { - retVal = KErrArgument; - break; - } - } - - if(retVal == KErrNone) - { - TLex8 lex(param); - retVal = lex.Val(aValue); - } + TLex8 lex(param); + retVal = lex.Val(aValue); } TRACE_FUNC_EXIT return retVal;