cvs: php-src /ext/spl spl_directory.c
| From: | Marcus Boerger | Date: | Wed, 20 Dec 2006 23:30:23 +0000 |
| Subject: | cvs: php-src /ext/spl spl_directory.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-42238@lists.php.net to get a copy of this message | ||
helly Wed Dec 20 23:30:23 2006 UTC
Modified files:
/php-src/ext/spl spl_directory.c
Log:
- Quick hackto make tests pass
# There is something missing, ZVAL_TYPED_ASCII_STRING(z, type, char*,flags)
# Or am i overseeinghow that works?
http://cvs.php.net/viewvc.cgi/php-src/ext/spl/spl_directory.c?r1=1.105&r2=1.106&diff_format=u
Index: php-src/ext/spl/spl_directory.c
diff -u php-src/ext/spl/spl_directory.c:1.105 php-src/ext/spl/spl_directory.c:1.106
--- php-src/ext/spl/spl_directory.c:1.105 Sun Nov 12 17:56:14 2006
+++ php-src/ext/spl/spl_directory.c Wed Dec 20 23:30:23 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: spl_directory.c,v 1.105 2006/11/12 17:56:14 helly Exp $ */
+/* $Id: spl_directory.c,v 1.106 2006/12/20 23:30:23 helly Exp $ */
#ifdef HAVE_CONFIG_H
# include "config.h"
@@ -1225,16 +1225,28 @@
{
spl_filesystem_object *intern = (spl_filesystem_object*)zend_object_store_get_object(readobj
TSRMLS_CC);
- if (type == IS_STRING) {
- switch (intern->type) {
- case SPL_FS_INFO:
- case SPL_FS_FILE:
+ switch (intern->type) {
+ case SPL_FS_INFO:
+ case SPL_FS_FILE:
+ if (type == IS_STRING) {
ZVAL_STRINGL(writeobj, intern->file_name, intern->file_name_len, 1);
return SUCCESS;
- case SPL_FS_DIR:
+ }
+ if (type == IS_UNICODE && UG(unicode)) {
+ ZVAL_ASCII_STRINGL(writeobj, intern->file_name, intern->file_name_len, 1);
+ return SUCCESS;
+ }
+ break;
+ case SPL_FS_DIR:
+ if (type == IS_STRING) {
ZVAL_STRING(writeobj, intern->u.dir.entry.d_name, 1);
return SUCCESS;
}
+ if (type == IS_UNICODE && UG(unicode)) {
+ ZVAL_ASCII_STRING(writeobj, intern->u.dir.entry.d_name, 1);
+ return SUCCESS;
+ }
+ break;
}
ZVAL_NULL(writeobj);
return FAILURE;