]> granicus.if.org Git - php/commitdiff
- mkdir(): made second (mode) parameter optional, default to 0777
authorMarkus Fischer <mfischer@php.net>
Fri, 11 Jan 2002 10:44:24 +0000 (10:44 +0000)
committerMarkus Fischer <mfischer@php.net>
Fri, 11 Jan 2002 10:44:24 +0000 (10:44 +0000)
           switched to zend_parse_parameters().
# Added vim 'noet' setting

ext/standard/file.c

index 20cf1cda84df7337cf3fa61f81906ac551f7a9ba..7a9c8e72021e54b48028f3c2bf99f549cf4bb4c8 100644 (file)
@@ -1447,32 +1447,28 @@ PHP_FUNCTION(fseek)
 }
 
 /* }}} */
-/* {{{ proto bool mkdir(string pathname, int mode)
+/* {{{ proto bool mkdir(string pathname[, int mode])
    Create a directory */
 
 PHP_FUNCTION(mkdir)
 {
-       zval **arg1, **arg2;
-       int ret;
-       mode_t mode;
+       int dir_len, ret;
+       mode_t mode = 0777;
+       char *dir;
 
-       if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &arg1, &arg2) == FAILURE) {
-               WRONG_PARAM_COUNT;
+       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|l", &dir, &dir_len, &mode) == FAILURE) {
+               return;
        }
-       convert_to_string_ex(arg1);
-       convert_to_long_ex(arg2);
 
-       mode = (mode_t) Z_LVAL_PP(arg2);
-
-       if (PG(safe_mode) &&(!php_checkuid(Z_STRVAL_PP(arg1), NULL, CHECKUID_ALLOW_ONLY_DIR))) {
+       if (PG(safe_mode) &&(!php_checkuid(dir, NULL, CHECKUID_ALLOW_ONLY_DIR))) {
                RETURN_FALSE;
        }
 
-       if (php_check_open_basedir(Z_STRVAL_PP(arg1) TSRMLS_CC)) {
+       if (php_check_open_basedir(dir TSRMLS_CC)) {
                RETURN_FALSE;
        }
 
-       ret = VCWD_MKDIR(Z_STRVAL_PP(arg1), mode);
+       ret = VCWD_MKDIR(dir, mode);
        if (ret < 0) {
                php_error(E_WARNING, "mkdir() failed (%s)", strerror(errno));
                RETURN_FALSE;
@@ -2354,6 +2350,6 @@ php_meta_tags_token php_next_meta_token(php_meta_tags_data *md)
  * tab-width: 4
  * c-basic-offset: 4
  * End:
- * vim600: sw=4 ts=4 fdm=marker
- * vim<600: sw=4 ts=4
+ * vim600: noet sw=4 ts=4 fdm=marker
+ * vim<600: noet sw=4 ts=4
  */