summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authorgordon <gordon@FreeBSD.org>2010-05-12 17:44:00 +0000
committergordon <gordon@FreeBSD.org>2010-05-12 17:44:00 +0000
commitaa2854668c2135ea17327ecfdb915bebc77548fe (patch)
tree8ea0a52b10171bb1921a03b799897510621245d7 /lib/libc
parent37f14d5393e3ae76ac2a4b7f4bc4852e6aaf3e7c (diff)
downloadFreeBSD-src-aa2854668c2135ea17327ecfdb915bebc77548fe.zip
FreeBSD-src-aa2854668c2135ea17327ecfdb915bebc77548fe.tar.gz
Fix a bug due to a type conversion from 64 to 32 bits. The side effect of
this type conversion is the high bits which were used to indicate if a special character was a literal or special were dropped. As a result, all special character were treated as special, even if they were supposed to be literals. Reviewed by: gad@ Approved by: mentor (wes@)
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/gen/glob.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libc/gen/glob.c b/lib/libc/gen/glob.c
index 32af5db..c3d9f08 100644
--- a/lib/libc/gen/glob.c
+++ b/lib/libc/gen/glob.c
@@ -433,9 +433,9 @@ static int
glob0(const Char *pattern, glob_t *pglob, size_t *limit)
{
const Char *qpatnext;
- int c, err;
+ int err;
size_t oldpathc;
- Char *bufnext, patbuf[MAXPATHLEN];
+ Char *bufnext, c, patbuf[MAXPATHLEN];
qpatnext = globtilde(pattern, patbuf, MAXPATHLEN, pglob);
oldpathc = pglob->gl_pathc;
OpenPOWER on IntegriCloud