diff --git a/core/modules/file/file.module b/core/modules/file/file.module index 078a245442852242f779adbddfb6059bc50b1f32..2141cae59f13108e5797f5a4836f7e9ce4daa72f 100644 --- a/core/modules/file/file.module +++ b/core/modules/file/file.module @@ -72,6 +72,7 @@ function file_element_info() { '#progress_message' => NULL, '#upload_validators' => array(), '#upload_location' => NULL, + '#size' => 22, '#extended' => FALSE, '#attached' => array( 'css' => array($file_path . '/file.admin.css'), @@ -443,7 +444,7 @@ function file_managed_file_process($element, &$form_state, $form) { '#type' => 'file', '#title' => t('Choose a file'), '#title_display' => 'invisible', - '#size' => 22, + '#size' => $element['#size'], '#theme_wrappers' => array(), '#weight' => -10, ); diff --git a/core/modules/file/tests/file.test b/core/modules/file/tests/file.test index 538118a0f2a46c1a85c63bc04a6cc02e2b975c05..459609b084805c8b06a4dc867c9fdc46c24f8fd2 100644 --- a/core/modules/file/tests/file.test +++ b/core/modules/file/tests/file.test @@ -239,6 +239,10 @@ class FileManagedFileElementTestCase extends FileFieldTestCase { * Tests the managed_file element type. */ function testManagedFile() { + // Check that $element['#size'] is passed to the child upload element. + $this->drupalGet('file/test'); + $this->assertFieldByXpath('//input[@name="files[nested_file]" and @size="13"]', NULL, 'The custom #size attribute is passed to the child upload element.'); + // Perform the tests with all permutations of $form['#tree'] and // $element['#extended']. foreach (array(0, 1) as $tree) { diff --git a/core/modules/file/tests/file_module_test.module b/core/modules/file/tests/file_module_test.module index d75e929dc09f4f4b54bb3794deb98ad10a5fde13..490ef42991199db1f13f7121dfd1a3eeecd66fd0 100644 --- a/core/modules/file/tests/file_module_test.module +++ b/core/modules/file/tests/file_module_test.module @@ -37,6 +37,7 @@ function file_module_test_form($form, &$form_state, $tree = TRUE, $extended = FA '#upload_location' => 'public://test', '#progress_message' => t('Please wait...'), '#extended' => (bool) $extended, + '#size' => 13, ); if ($default_fid) { $form['nested']['file']['#default_value'] = $extended ? array('fid' => $default_fid) : $default_fid;