diff options
author | Joe Orton <jorton@apache.org> | 2019-08-28 07:07:18 +0000 |
---|---|---|
committer | Joe Orton <jorton@apache.org> | 2019-08-28 07:07:18 +0000 |
commit | 4652187ac662508908a05490fc590ea7c7d9f8fc (patch) | |
tree | 884da0fe08b25eebb60b8379285fbd6aa4b905e5 /file_io | |
parent | a1e6225e65054e86efd1908f9d4470e7d033783b (diff) | |
download | apr-4652187ac662508908a05490fc590ea7c7d9f8fc.tar.gz |
Revert r1862435, r1862071 per veto from ivan
msgid: <CABw-3YcK0qbeYWDOwE684XtBj3rCT2CuVOBWWqda4gMtRyRJEw@mail.gmail.com>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1866019 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'file_io')
-rw-r--r-- | file_io/os2/dir.c | 14 | ||||
-rw-r--r-- | file_io/unix/dir.c | 12 | ||||
-rw-r--r-- | file_io/win32/dir.c | 10 |
3 files changed, 10 insertions, 26 deletions
diff --git a/file_io/os2/dir.c b/file_io/os2/dir.c index c26f39d1f..f1554b6f3 100644 --- a/file_io/os2/dir.c +++ b/file_io/os2/dir.c @@ -79,28 +79,24 @@ APR_DECLARE(apr_status_t) apr_dir_close(apr_dir_t *thedir) return APR_FROM_OS_ERROR(rv); } + + APR_DECLARE(apr_status_t) apr_dir_read(apr_finfo_t *finfo, apr_int32_t wanted, apr_dir_t *thedir) { - return apr_dir_pread(finfo, wanted, thedir, thedir->pool); -} - -APR_DECLARE(apr_status_t) apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, - apr_dir_t *thedir, apr_pool_t *pool) -{ int rv; ULONG entries = 1; if (thedir->handle == 0) { thedir->handle = HDIR_CREATE; - rv = DosFindFirst(apr_pstrcat(pool, thedir->dirname, "/*", NULL), &thedir->handle, + rv = DosFindFirst(apr_pstrcat(thedir->pool, thedir->dirname, "/*", NULL), &thedir->handle, FILE_ARCHIVED|FILE_DIRECTORY|FILE_SYSTEM|FILE_HIDDEN|FILE_READONLY, &thedir->entry, sizeof(thedir->entry), &entries, FIL_STANDARD); } else { rv = DosFindNext(thedir->handle, &thedir->entry, sizeof(thedir->entry), &entries); } - finfo->pool = pool; + finfo->pool = thedir->pool; finfo->fname = NULL; finfo->valid = 0; @@ -122,7 +118,7 @@ APR_DECLARE(apr_status_t) apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, apr_os2_time_to_apr_time(&finfo->ctime, thedir->entry.fdateCreation, thedir->entry.ftimeCreation); - finfo->name = apr_pstrdup(pool, thedir->entry.achName); + finfo->name = thedir->entry.achName; finfo->valid = APR_FINFO_NAME | APR_FINFO_MTIME | APR_FINFO_ATIME | APR_FINFO_CTIME | APR_FINFO_TYPE | APR_FINFO_SIZE | APR_FINFO_CSIZE; diff --git a/file_io/unix/dir.c b/file_io/unix/dir.c index 5a17b8601..d9b344f30 100644 --- a/file_io/unix/dir.c +++ b/file_io/unix/dir.c @@ -142,12 +142,6 @@ static apr_filetype_e filetype_from_dirent_type(int type) apr_status_t apr_dir_read(apr_finfo_t *finfo, apr_int32_t wanted, apr_dir_t *thedir) { - return apr_dir_pread(finfo, wanted, thedir, thedir->pool); -} - -apr_status_t apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, - apr_dir_t *thedir, apr_pool_t *pool) -{ apr_status_t ret = 0; #ifdef DIRENT_TYPE apr_filetype_e type; @@ -257,7 +251,7 @@ apr_status_t apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, apr_cpystrn(end, thedir->entry->d_name, sizeof fspec - (end - fspec)); - ret = apr_stat(finfo, fspec, APR_FINFO_LINK | wanted, pool); + ret = apr_stat(finfo, fspec, APR_FINFO_LINK | wanted, thedir->pool); /* We passed a stack name that will disappear */ finfo->fname = NULL; } @@ -269,7 +263,7 @@ apr_status_t apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, /* We don't bail because we fail to stat, when we are only -required- * to readdir... but the result will be APR_INCOMPLETE */ - finfo->pool = pool; + finfo->pool = thedir->pool; finfo->valid = 0; #ifdef DIRENT_TYPE if (type != APR_UNKFILE) { @@ -285,7 +279,7 @@ apr_status_t apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, #endif } - finfo->name = apr_pstrdup(pool, thedir->entry->d_name); + finfo->name = apr_pstrdup(thedir->pool, thedir->entry->d_name); finfo->valid |= APR_FINFO_NAME; if (wanted) diff --git a/file_io/win32/dir.c b/file_io/win32/dir.c index b02c9cdfd..f44bceb97 100644 --- a/file_io/win32/dir.c +++ b/file_io/win32/dir.c @@ -91,12 +91,6 @@ APR_DECLARE(apr_status_t) apr_dir_close(apr_dir_t *dir) APR_DECLARE(apr_status_t) apr_dir_read(apr_finfo_t *finfo, apr_int32_t wanted, apr_dir_t *thedir) { - return apr_dir_pread(finfo, wanted, thedir, thedir->pool); -} - -APR_DECLARE(apr_status_t) apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, - apr_dir_t *thedir, apr_pool_t *pool) -{ apr_status_t rv; char *fname; apr_wchar_t wdirname[APR_PATH_MAX]; @@ -152,11 +146,11 @@ APR_DECLARE(apr_status_t) apr_dir_pread(apr_finfo_t *finfo, apr_int32_t wanted, if ((rv = unicode_to_utf8_path(thedir->name, APR_FILE_MAX * 3 + 1, thedir->entry->cFileName))) return rv; - fname = apr_pstrdup(pool, thedir->name); + fname = thedir->name; fillin_fileinfo(finfo, (WIN32_FILE_ATTRIBUTE_DATA *) thedir->entry, 0, 1, fname, wanted); - finfo->pool = pool; + finfo->pool = thedir->pool; finfo->valid |= APR_FINFO_NAME; finfo->name = fname; |