Browse Source

Merge pull request #11352 from cakephp/issue-11351

FormData::addFile() should add the part.
Mark Story 8 years ago
parent
commit
a073f43360
2 changed files with 4 additions and 3 deletions
  1. 3 2
      src/Http/Client/FormData.php
  2. 1 1
      tests/TestCase/Http/Client/FormDataTest.php

+ 3 - 2
src/Http/Client/FormData.php

@@ -100,14 +100,14 @@ class FormData implements Countable
         if (is_array($value)) {
             $this->addRecursive($name, $value);
         } elseif (is_resource($value)) {
-            $this->_parts[] = $this->addFile($name, $value);
+            $this->addFile($name, $value);
         } elseif (is_string($value) && strlen($value) && $value[0] === '@') {
             trigger_error(
                 'Using the @ syntax for file uploads is not safe and is deprecated. ' .
                 'Instead you should use file handles.',
                 E_USER_DEPRECATED
             );
-            $this->_parts[] = $this->addFile($name, $value);
+            $this->addFile($name, $value);
         } elseif ($name instanceof FormDataPart && $value === null) {
             $this->_hasComplexPart = true;
             $this->_parts[] = $name;
@@ -169,6 +169,7 @@ class FormData implements Countable
         if ($filename) {
             $part->filename($filename);
         }
+        $this->add($part);
 
         return $part;
     }

+ 1 - 1
tests/TestCase/Http/Client/FormDataTest.php

@@ -169,7 +169,7 @@ class FormDataTest extends TestCase
         $contents = file_get_contents($file);
 
         $data = new FormData();
-        $data->add('upload', fopen($file, 'r'));
+        $data->addFile('upload', fopen($file, 'r'));
         $boundary = $data->boundary();
         $result = (string)$data;