Index: edit-form-advanced.php
===================================================================
--- edit-form-advanced.php	(revision 12723)
+++ edit-form-advanced.php	(working copy)
@@ -33,7 +33,8 @@
 	sprintf( __('Post submitted. <a target="_blank" href="%s">Preview post</a>'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ),
 	// translators: Publish box date format, see http://php.net/date - Same as in meta-boxes.php
 	sprintf( __('Post scheduled for: <b>%1$s</b>. <a target="_blank" href="%2$s">Preview post</a>'), date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), get_permalink($post_ID) ),
-	sprintf( __('Post draft updated. <a target="_blank" href="%s">Preview post</a>'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) )
+	sprintf( __('Post draft updated. <a target="_blank" href="%s">Preview post</a>'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ),
+	__('You attempted to save or publish an empty post. Provide some content before saving.')
 );
 $messages['page'] = array(
 	'',
Index: post.php
===================================================================
--- post.php	(revision 12723)
+++ post.php	(working copy)
@@ -57,6 +57,11 @@
 		elseif ( isset($_POST['publish']) )
 			$location = 'sidebar.php?a=b';
 	} elseif ( isset($_POST['save']) || isset($_POST['publish']) ) {
+		if( 0== $post_id ){
+			$location = "post-new.php?message=11";
+			wp_redirect($location);
+			exit();
+		} else {
 		$status = get_post_status( $post_id );
 
 		if ( isset( $_POST['publish'] ) ) {
@@ -73,6 +78,7 @@
 		} else {
 				$message = 'draft' == $status ? 10 : 1;
 		}
+		}
 
 		$location = add_query_arg( 'message', $message, get_edit_post_link( $post_id, 'url' ) );
 	} elseif ( isset($_POST['addmeta']) && $_POST['addmeta'] ) {
@@ -278,14 +284,6 @@
 	wp_redirect($url);
 	exit();
 	break;
-
-default:
-	if ( $post_type_object->hierarchical )
-		wp_redirect('edit-pages.php');
-	else
-		wp_redirect('edit.php');
-	exit();
-	break;
 } // end switch
 include('admin-footer.php');
 ?>
