DRY list of integer formats
This commit is contained in:
parent
1d5e27f6d7
commit
56ae8aa110
11
hiredis.c
11
hiredis.c
@ -749,6 +749,7 @@ int redisvFormatCommand(char **target, const char *format, va_list ap) {
|
||||
default:
|
||||
/* Try to detect printf format */
|
||||
{
|
||||
static const char intfmts[] = "diouxX";
|
||||
char _format[16];
|
||||
const char *_p = c+1;
|
||||
size_t _l = 0;
|
||||
@ -774,7 +775,7 @@ int redisvFormatCommand(char **target, const char *format, va_list ap) {
|
||||
va_copy(_cpy,ap);
|
||||
|
||||
/* Integer conversion (without modifiers) */
|
||||
if (strchr("diouxX",*_p) != NULL) {
|
||||
if (strchr(intfmts,*_p) != NULL) {
|
||||
va_arg(ap,int);
|
||||
goto fmt_valid;
|
||||
}
|
||||
@ -788,7 +789,7 @@ int redisvFormatCommand(char **target, const char *format, va_list ap) {
|
||||
/* Size: char */
|
||||
if (_p[0] == 'h' && _p[1] == 'h') {
|
||||
_p += 2;
|
||||
if (*_p != '\0' && strchr("diouxX",*_p) != NULL) {
|
||||
if (*_p != '\0' && strchr(intfmts,*_p) != NULL) {
|
||||
va_arg(ap,int); /* char gets promoted to int */
|
||||
goto fmt_valid;
|
||||
}
|
||||
@ -798,7 +799,7 @@ int redisvFormatCommand(char **target, const char *format, va_list ap) {
|
||||
/* Size: short */
|
||||
if (_p[0] == 'h') {
|
||||
_p += 1;
|
||||
if (*_p != '\0' && strchr("diouxX",*_p) != NULL) {
|
||||
if (*_p != '\0' && strchr(intfmts,*_p) != NULL) {
|
||||
va_arg(ap,int); /* short gets promoted to int */
|
||||
goto fmt_valid;
|
||||
}
|
||||
@ -808,7 +809,7 @@ int redisvFormatCommand(char **target, const char *format, va_list ap) {
|
||||
/* Size: long long */
|
||||
if (_p[0] == 'l' && _p[1] == 'l') {
|
||||
_p += 2;
|
||||
if (*_p != '\0' && strchr("diouxX",*_p) != NULL) {
|
||||
if (*_p != '\0' && strchr(intfmts,*_p) != NULL) {
|
||||
va_arg(ap,long long);
|
||||
goto fmt_valid;
|
||||
}
|
||||
@ -818,7 +819,7 @@ int redisvFormatCommand(char **target, const char *format, va_list ap) {
|
||||
/* Size: long */
|
||||
if (_p[0] == 'l') {
|
||||
_p += 1;
|
||||
if (*_p != '\0' && strchr("diouxX",*_p) != NULL) {
|
||||
if (*_p != '\0' && strchr(intfmts,*_p) != NULL) {
|
||||
va_arg(ap,long);
|
||||
goto fmt_valid;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user