aboutsummaryrefslogtreecommitdiff
path: root/xkbcomp/xkbscan.c
diff options
context:
space:
mode:
Diffstat (limited to 'xkbcomp/xkbscan.c')
-rw-r--r--xkbcomp/xkbscan.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/xkbcomp/xkbscan.c b/xkbcomp/xkbscan.c
index 814a1235c..22a034fd9 100644
--- a/xkbcomp/xkbscan.c
+++ b/xkbcomp/xkbscan.c
@@ -615,16 +615,16 @@ yyGetNumber(int ch)
nInBuf = 1;
while (((ch = scanchar()) != EOF)
&& (isxdigit(ch) || ((nInBuf == 1) && (ch == 'x')))
- && nInBuf < nMaxBuffSize)
+ && nInBuf < (nMaxBuffSize - 1))
{
buf[nInBuf++] = ch;
}
- if (ch == '.')
+ if ((ch == '.') && (nInBuf < (nMaxBuffSize - 1)))
{
isFloat = 1;
buf[nInBuf++] = ch;
while (((ch = scanchar()) != EOF) && (isxdigit(ch))
- && nInBuf < nMaxBuffSize)
+ && nInBuf < (nMaxBuffSize - 1))
{
buf[nInBuf++] = ch;
}