com php-src: don't get invalid chmod mode through: Zend/zend_ virtual_cwd.c
| From: | Anatol Belski | Date: | Thu, 05 Nov 2015 13:46:23 +0000 |
| Subject: | com php-src: don't get invalid chmod mode through: Zend/zend_ virtual_cwd.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-89594@lists.php.net to get a copy of this message | ||
Commit: 9968129831ab0eaf92841336dc1bd6049f711d4a
Author: Anatol Belski <ab@php.net> Thu, 5 Nov 2015 11:58:44 +0100
Parents: dea14fc70782aa7c622a0ef5af9b163f042c05f9
Branches: PHP-7.0 master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=9968129831ab0eaf92841336dc1bd6049f711d4a
Log:
don't get invalid chmod mode through
Changed paths:
M Zend/zend_virtual_cwd.c
Diff:
diff --git a/Zend/zend_virtual_cwd.c b/Zend/zend_virtual_cwd.c
index 99c3f30..fedd0a2 100644
--- a/Zend/zend_virtual_cwd.c
+++ b/Zend/zend_virtual_cwd.c
@@ -1566,6 +1566,20 @@ CWD_API int virtual_chmod(const char *filename, mode_t mode) /* {{{ */
return -1;
}
+#ifdef ZEND_WIN32
+ {
+ mode_t _tmp = mode;
+
+ mode = 0;
+
+ if (_tmp & _S_IREAD) {
+ mode |= _S_IREAD;
+ }
+ if (_tmp & _S_IWRITE) {
+ mode |= _S_IWRITE;
+ }
+ }
+#endif
ret = chmod(new_state.cwd, mode);
CWD_STATE_FREE_ERR(&new_state);