Index: modules/field/modules/text/text.js
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/modules/text/text.js,v
retrieving revision 1.4
diff -u -p -r1.4 text.js
--- modules/field/modules/text/text.js	12 Jun 2010 08:18:59 -0000	1.4
+++ modules/field/modules/text/text.js	15 Oct 2010 05:27:26 -0000
@@ -38,7 +38,7 @@ Drupal.behaviors.textSummary = {
         ).appendTo($summaryLabel);
 
         // If no summary is set, hide the summary field.
-        if ($(this).val() == '') {
+        if ($(this).find('.text-summary').val() == '') {
           $link.click();
         }
         return;
Index: modules/field/modules/text/text.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/modules/text/text.module,v
retrieving revision 1.65
diff -u -p -r1.65 text.module
--- modules/field/modules/text/text.module	18 Sep 2010 02:18:35 -0000	1.65
+++ modules/field/modules/text/text.module	15 Oct 2010 05:27:26 -0000
@@ -171,7 +171,12 @@ function text_field_load($entity_type, $
  */
 function text_field_is_empty($item, $field) {
   if (empty($item['value']) && (string) $item['value'] !== '0') {
-    return TRUE;
+    if ($field['type'] == 'text_with_summary') {
+      return (empty($item['summary']) && (string)$item['summary'] !== '0');
+    }
+    else {
+      return TRUE;
+    }
   }
   return FALSE;
 }
Index: modules/field/modules/text/text.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/modules/text/text.test,v
retrieving revision 1.29
diff -u -p -r1.29 text.test
--- modules/field/modules/text/text.test	24 Sep 2010 00:37:42 -0000	1.29
+++ modules/field/modules/text/text.test	15 Oct 2010 05:27:26 -0000
@@ -238,6 +238,11 @@ class TextSummaryTestCase extends Drupal
     );
   }
 
+  function setUp() {
+    parent::setUp();
+    $this->article_creator = $this->drupalCreateUser(array('create article content', 'edit own article content'));
+  }
+
   /**
    * Tests an edge case where the first sentence is a question and
    * subsequent sentences are not. This edge case is documented at
@@ -372,6 +377,24 @@ class TextSummaryTestCase extends Drupal
     $summary = text_summary($text, $format, $size);
     $this->assertIdentical($summary, $expected, t('Generated summary "@summary" matches expected "@expected".', array('@summary' => $summary, '@expected' => $expected)));
   }
+
+  /**
+   * Test sending only summary.
+   */
+  function testOnlyTextSummary() {
+    // Login as article creator.
+    $this->drupalLogin($this->article_creator);
+    // Create article with summary but empty body.
+    $summary = $this->randomName();
+    $edit = array(
+      "title" => $this->randomName(),
+      "body[und][0][summary]" => $summary,
+    );
+    $this->drupalPost('node/add/article', $edit, t('Save'));
+    $node = $this->drupalGetNodeByTitle($edit['title']);
+
+    $this->assertIdentical($node->body['und'][0]['summary'], $summary, t('Article with with summary and no body has been submitted.'));
+  }
 }
 
 class TextTranslationTestCase extends DrupalWebTestCase {
