From c603f3112ed0d7895d94357f3bcbc40eae80d1ee Mon Sep 17 00:00:00 2001 From: Sara Golemon Date: Wed, 28 Jan 2004 22:50:12 +0000 Subject: [PATCH] FTP dirstream_read should not leave whitespace/newlines on dirents --- ext/standard/ftp_fopen_wrapper.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ext/standard/ftp_fopen_wrapper.c b/ext/standard/ftp_fopen_wrapper.c index 533a98c505..3032550654 100644 --- a/ext/standard/ftp_fopen_wrapper.c +++ b/ext/standard/ftp_fopen_wrapper.c @@ -586,11 +586,19 @@ static size_t php_ftp_dirstream_read(php_stream *stream, char *buf, size_t count return 0; } - tmp_len = MIN(sizeof(ent->d_name), basename_len) - 1; + tmp_len = MIN(sizeof(ent->d_name), basename_len - 1); memcpy(ent->d_name, basename, tmp_len); ent->d_name[tmp_len] = '\0'; efree(basename); + /* Trim off trailing whitespace characters */ + tmp_len--; + while (tmp_len >= 0 && + (ent->d_name[tmp_len] == '\n' || ent->d_name[tmp_len] == '\r' || + ent->d_name[tmp_len] == '\t' || ent->d_name[tmp_len] == ' ')) { + ent->d_name[tmp_len--] = '\0'; + } + return sizeof(php_stream_dirent); } /* }}} */ -- 2.40.0