rem: DBG("str2s: ERROR: unexpected char %c in %.*s\n", *str, len, init);
add: DBG("str2s: ERROR: unexpected char %c in %.*s\n", *str, (int)len, init);
context: static inline unsigned short str2s(unsigned char* str, unsigned int len,									int *err){	unsigned short ret;	int i;	unsigned char *limit;	unsigned char *init;	/*init*/	ret=i=0;	limit=str+len;	init=str;	for(;str<limit ;str++){		if ( (*str <= '9' ) && (*str >= '0') ){				ret=ret*10+*str-'0';				i++;				if (i>5) goto error_digits;		}else{				//error unknown char				goto error_char;		}	}	if (err) *err=0;	return ret;error_digits:	DBG("str2s: ERROR: too many letters in [%.*s]\n", len, init);	if (err) *err=1;	return 0;error_char:	DBG("str2s: ERROR: unexpected char %c in %.*s\n", *str, len, init);	if (err) *err=1;	return 0;}