Simplify printer_smodel_check
Saves 140 bytes of flash and 4 bytes of SRAM
This commit is contained in:
parent
e3f48ead9f
commit
65d500f2ed
1 changed files with 10 additions and 22 deletions
|
@ -444,35 +444,23 @@ pStrEnd=strchr(pStrBegin,GCODE_DELIMITER);
|
|||
if(!pStrEnd)
|
||||
return(NULL);
|
||||
*nLength=pStrEnd-pStrBegin;
|
||||
return(pStrBegin);
|
||||
pStrBegin[*nLength] = '\0';
|
||||
return pStrBegin;
|
||||
}
|
||||
|
||||
void printer_smodel_check(char* pStrPos)
|
||||
{
|
||||
char* pResult;
|
||||
size_t nLength,nPrinterNameLength;
|
||||
bool bCheckOK;
|
||||
char sPrinterName[PRINTER_NAME_LENGTH+sizeof(ELLIPSIS)-1+1]="";
|
||||
|
||||
nPrinterNameLength=strlen_P(::sPrinterName);
|
||||
pResult=code_string(pStrPos,&nLength);
|
||||
if(pResult!=NULL)
|
||||
{
|
||||
strlcpy(sPrinterName,pResult,min(nPrinterNameLength,nLength)+1);
|
||||
if(nLength>nPrinterNameLength)
|
||||
strcat(sPrinterName,ELLIPSIS);
|
||||
bCheckOK=(nLength==nPrinterNameLength);
|
||||
if(bCheckOK&&(!strncasecmp_P(pResult,::sPrinterName,nLength))) // i.e. string compare execute only if lengths are same
|
||||
return;
|
||||
}
|
||||
//SERIAL_ECHO_START;
|
||||
//SERIAL_ECHOLNPGM("Printer model differs from the G-code ...");
|
||||
//SERIAL_ECHOPGM("actual : \"");
|
||||
//serialprintPGM(::sPrinterName);
|
||||
//SERIAL_ECHOLNPGM("\"");
|
||||
//SERIAL_ECHOPGM("expected: \"");
|
||||
////SERIAL_ECHO(sPrinterName);
|
||||
//SERIAL_ECHOLNPGM("\"");
|
||||
nPrinterNameLength = strlen_P(sPrinterName);
|
||||
pResult = code_string(pStrPos,&nLength);
|
||||
|
||||
if(pResult != NULL && nLength == nPrinterNameLength) {
|
||||
// Only compare them if the lengths match
|
||||
if (strcmp_P(pResult, sPrinterName) == 0) return;
|
||||
}
|
||||
|
||||
switch(oCheckModel)
|
||||
{
|
||||
case ClCheckModel::_Warn:
|
||||
|
|
Loading…
Reference in a new issue