summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2012-09-25 19:38:15 +0000
committerJoseph Myers <joseph@codesourcery.com>2012-09-27 18:00:44 +0000
commit6c62f10874ddbab671255ce85ec85233c67f8bfc (patch)
tree5a65ed8f7eeef275164235656c2af6fe070f45e3
parentbbe53ed2c311b7281837b6f3f24ddeb8f3d65697 (diff)
downloadglibc-6c62f10874ddbab671255ce85ec85233c67f8bfc.tar.gz
Use size_t instead of int for internal variables in glob (bug 14621).
(cherry picked from commit b87c4b24d97321ef2f2da357f8fcf11f1f61e3dc) Conflicts: ChangeLog
-rw-r--r--ChangeLog8
-rw-r--r--NEWS2
-rw-r--r--posix/glob.c10
3 files changed, 14 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 967ab9b2b5..cddc90e4bf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2012-09-25 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #14621]
+ * posix/glob.c (next_brace_sub): Use size_t instead of unsigned
+ int as type of variable DEPTH.
+ (glob): Use size_t instead of int as type of variables NEWCOUNT
+ and OLD_PATHC.
+
2012-09-24 H.J. Lu <hongjiu.lu@intel.com>
[BZ #14562]
diff --git a/NEWS b/NEWS
index 4b10c01df1..48358b5124 100644
--- a/NEWS
+++ b/NEWS
@@ -9,7 +9,7 @@ Version 2.16.1
* The following bugs are resolved with this release:
- 14195, 14459, 14476, 14562
+ 14195, 14459, 14476, 14562, 14621
Version 2.16
diff --git a/posix/glob.c b/posix/glob.c
index 68ea2055da..87d4f1bd2a 100644
--- a/posix/glob.c
+++ b/posix/glob.c
@@ -217,7 +217,7 @@ static int collated_compare (const void *, const void *) __THROW;
static const char *
next_brace_sub (const char *cp, int flags)
{
- unsigned int depth = 0;
+ size_t depth = 0;
while (*cp != '\0')
if ((flags & GLOB_NOESCAPE) == 0 && *cp == '\\')
{
@@ -960,7 +960,7 @@ glob (pattern, flags, errfunc, pglob)
&& S_ISDIR (st.st_mode))
: (__stat64 (dirname, &st64) == 0 && S_ISDIR (st64.st_mode)))))
{
- int newcount = pglob->gl_pathc + pglob->gl_offs;
+ size_t newcount = pglob->gl_pathc + pglob->gl_offs;
char **new_gl_pathv;
if (newcount > UINTPTR_MAX - (1 + 1)
@@ -1059,7 +1059,7 @@ glob (pattern, flags, errfunc, pglob)
appending the results to PGLOB. */
for (i = 0; i < dirs.gl_pathc; ++i)
{
- int old_pathc;
+ size_t old_pathc;
#ifdef SHELL
{
@@ -1114,7 +1114,7 @@ glob (pattern, flags, errfunc, pglob)
/* No matches. */
if (flags & GLOB_NOCHECK)
{
- int newcount = pglob->gl_pathc + pglob->gl_offs;
+ size_t newcount = pglob->gl_pathc + pglob->gl_offs;
char **new_gl_pathv;
if (newcount > UINTPTR_MAX - 2
@@ -1158,7 +1158,7 @@ glob (pattern, flags, errfunc, pglob)
}
else
{
- int old_pathc = pglob->gl_pathc;
+ size_t old_pathc = pglob->gl_pathc;
int orig_flags = flags;
if (meta & 2)