mirror of
https://github.com/jarun/nnn.git
synced 2024-11-24 20:01:27 +00:00
Fix check when char is unsigned (#665)
If char is unsigned (as on ARM) subtracting a larger number would result in a wrap around, not a negative value. src/nnn.c: In function 'readpipe': src/nnn.c:4325:11: warning: comparison is always false due to limited range of data type [-Wtype-limits] if (ctx < 0 || ctx > CTX_MAX) ^
This commit is contained in:
parent
3686ef756a
commit
235eb29614
|
@ -4326,9 +4326,11 @@ static void readpipe(int fd, char **path, char **lastname, char **lastdir)
|
||||||
|
|
||||||
if (g_buf[0] == '+')
|
if (g_buf[0] == '+')
|
||||||
ctx = (char)(get_free_ctx() + 1);
|
ctx = (char)(get_free_ctx() + 1);
|
||||||
|
else if (g_buf[0] < '0')
|
||||||
|
return;
|
||||||
else {
|
else {
|
||||||
ctx = g_buf[0] - '0';
|
ctx = g_buf[0] - '0';
|
||||||
if (ctx < 0 || ctx > CTX_MAX)
|
if (ctx > CTX_MAX)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue