diff options
Diffstat (limited to 'dev-db/postgresql/files/postgresql-9.2-9.4-tz-dir-overflow.patch')
-rw-r--r-- | dev-db/postgresql/files/postgresql-9.2-9.4-tz-dir-overflow.patch | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/dev-db/postgresql/files/postgresql-9.2-9.4-tz-dir-overflow.patch b/dev-db/postgresql/files/postgresql-9.2-9.4-tz-dir-overflow.patch new file mode 100644 index 000000000000..59e43c5384e7 --- /dev/null +++ b/dev-db/postgresql/files/postgresql-9.2-9.4-tz-dir-overflow.patch @@ -0,0 +1,16 @@ +--- a/src/timezone/pgtz.c 2015-02-02 15:45:23.000000000 -0500 ++++ b/src/timezone/pgtz.c 2015-04-07 14:21:22.341832190 -0400 +@@ -1615,6 +1615,13 @@ + if (direntry->d_name[0] == '.') + continue; + ++ /* copy current working directory so that there is no risk of modification by basename(), ++ * and compare to current direntry name; skip if they are the same as this is a recursive fs loop ++ */ ++ snprintf(fullname, MAXPGPATH, "%s", dir->dirname[dir->depth]); ++ if (strncmp(direntry->d_name,basename(fullname),strlen(direntry->d_name)) == 0) ++ continue; ++ + snprintf(fullname, MAXPGPATH, "%s/%s", + dir->dirname[dir->depth], direntry->d_name); + if (stat(fullname, &statbuf) != 0) |