diff --git a/src/wp-includes/class-wp-http.php b/src/wp-includes/class-wp-http.php index 2e3a9dec22639..477424df78905 100644 --- a/src/wp-includes/class-wp-http.php +++ b/src/wp-includes/class-wp-http.php @@ -310,6 +310,11 @@ public function request( $url, $args = array() ) { if ( $parsed_args['stream'] ) { if ( empty( $parsed_args['filename'] ) ) { $parsed_args['filename'] = get_temp_dir() . basename( $url ); + + // If that file exists, fallback to a temporary file. + if ( file_exists( $parsed_args['filename'] ) ) { + $parsed_args['filename'] = wp_tempnam( basename( $url ) ); + } } // Force some settings if we are streaming to a file and check for existence