diff options
Diffstat (limited to 'lib/erl_interface/src')
| -rw-r--r-- | lib/erl_interface/src/misc/ei_format.c | 4 | 
1 files changed, 4 insertions, 0 deletions
| diff --git a/lib/erl_interface/src/misc/ei_format.c b/lib/erl_interface/src/misc/ei_format.c index 08235d0ebe..b35421d4b2 100644 --- a/lib/erl_interface/src/misc/ei_format.c +++ b/lib/erl_interface/src/misc/ei_format.c @@ -106,6 +106,8 @@ static int eiformat(const char** fmt, union arg** args, ei_x_buff* x)      default:  	if (isdigit((int)*p))  	    res = pdigit(&p, x); +	else if ((*p == '-' || *p == '+') && isdigit((int)*(p+1))) +	    res = pdigit(&p, x);  	else if (islower((int)*p))  	    res = patom(&p, x);  	else @@ -149,6 +151,8 @@ static int pdigit(const char** fmt, ei_x_buff* x)      double d;      long l; +    if (**fmt == '-' || **fmt == '+') +	(*fmt)++;      for (;;) {  	c = *(*fmt)++;  	if (isdigit((int)c)) | 
