@@ -2354,32 +2354,33 @@ PHP_FUNCTION(is_uploaded_file)
2354
2354
/* {{{ Move a file if and only if it was created by an upload */
2355
2355
PHP_FUNCTION (move_uploaded_file )
2356
2356
{
2357
- char * path , * new_path ;
2358
- size_t path_len , new_path_len ;
2357
+ zend_string * path ;
2358
+ char * new_path ;
2359
+ size_t new_path_len ;
2359
2360
bool successful = 0 ;
2360
2361
2361
2362
#ifndef PHP_WIN32
2362
2363
int oldmask ; int ret ;
2363
2364
#endif
2364
2365
2365
2366
ZEND_PARSE_PARAMETERS_START (2 , 2 )
2366
- Z_PARAM_STRING (path , path_len )
2367
+ Z_PARAM_STR (path ) // TODO Should this use Z_PARAM_PATH_STR() ?
2367
2368
Z_PARAM_PATH (new_path , new_path_len )
2368
2369
ZEND_PARSE_PARAMETERS_END ();
2369
2370
2370
2371
if (!SG (rfc1867_uploaded_files )) {
2371
2372
RETURN_FALSE ;
2372
2373
}
2373
2374
2374
- if (!zend_hash_str_exists (SG (rfc1867_uploaded_files ), path , path_len )) {
2375
+ if (!zend_hash_exists (SG (rfc1867_uploaded_files ), path )) {
2375
2376
RETURN_FALSE ;
2376
2377
}
2377
2378
2378
2379
if (php_check_open_basedir (new_path )) {
2379
2380
RETURN_FALSE ;
2380
2381
}
2381
2382
2382
- if (VCWD_RENAME (path , path_len , new_path , new_path_len ) == 0 ) {
2383
+ if (VCWD_RENAME (ZSTR_VAL ( path ), ZSTR_LEN ( path ) , new_path , new_path_len ) == 0 ) {
2383
2384
successful = 1 ;
2384
2385
#ifndef PHP_WIN32
2385
2386
oldmask = umask (077 );
@@ -2391,15 +2392,15 @@ PHP_FUNCTION(move_uploaded_file)
2391
2392
php_error_docref (NULL , E_WARNING , "%s" , strerror (errno ));
2392
2393
}
2393
2394
#endif
2394
- } else if (php_copy_file_ex (path , new_path , STREAM_DISABLE_OPEN_BASEDIR ) == SUCCESS ) {
2395
- VCWD_UNLINK (path );
2395
+ } else if (php_copy_file_ex (ZSTR_VAL ( path ) , new_path , STREAM_DISABLE_OPEN_BASEDIR ) == SUCCESS ) {
2396
+ VCWD_UNLINK (ZSTR_VAL ( path ) );
2396
2397
successful = 1 ;
2397
2398
}
2398
2399
2399
2400
if (successful ) {
2400
- zend_hash_str_del (SG (rfc1867_uploaded_files ), path , path_len );
2401
+ zend_hash_del (SG (rfc1867_uploaded_files ), path );
2401
2402
} else {
2402
- php_error_docref (NULL , E_WARNING , "Unable to move \"%s\" to \"%s\"" , path , new_path );
2403
+ php_error_docref (NULL , E_WARNING , "Unable to move \"%s\" to \"%s\"" , ZSTR_VAL ( path ) , new_path );
2403
2404
}
2404
2405
2405
2406
RETURN_BOOL (successful );
0 commit comments