diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/errno/strerror.c | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/src/errno/strerror.c b/src/errno/strerror.c index b8fbc6db..b5559cbe 100644 --- a/src/errno/strerror.c +++ b/src/errno/strerror.c @@ -1,7 +1,7 @@  #include <errno.h>  #include <string.h> -#define E(a,b) a, +#define E(a,b) ((unsigned char)a),  static const unsigned char errid[] = {  #include "__strerror.h"  }; @@ -16,6 +16,12 @@ char *strerror(int e)  {  	const char *s;  	int i; +	/* mips has one error code outside of the 8-bit range due to a +	 * historical typo, so we just remap it. */ +	if (EDQUOT==1133) { +		if (e==109) e=-1; +		else if (e==EDQUOT) e=109; +	}  	for (i=0; errid[i] && errid[i] != e; i++);  	for (s=errmsg; i; s++, i--) for (; *s; s++);  	return (char *)s; | 
