Index: edit-form-advanced.php
===================================================================
--- edit-form-advanced.php	(revision 12596)
+++ edit-form-advanced.php	(working copy)
@@ -56,6 +56,9 @@
 		case 10:
 			$message = sprintf( __('Post draft updated. <a target="_blank" href="%s">Preview post</a>'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) );
 			break;
+		case 11:
+			$message = __('You attempted to save or publish an empty post. Provide some content before saving.');
+		break;
 	}
 }
 
Index: edit-page-form.php
===================================================================
--- edit-page-form.php	(revision 12596)
+++ edit-page-form.php	(working copy)
@@ -51,6 +51,9 @@
 		case 8:
 			$message = sprintf( __('Page draft updated. <a target="_blank" href="%s">Preview page</a>'), add_query_arg( 'preview', 'true', get_permalink($post_ID) ) );
 			break;
+		case 11:
+			$message = __('You attempted to save or publish an empty page. Provide some content before saving.');
+		break;
 	}
 }
 
Index: page.php
===================================================================
--- page.php	(revision 12596)
+++ page.php	(working copy)
@@ -34,6 +34,10 @@
 	if ( 'post' == $_POST['originalaction'] && !empty($_POST['mode']) && 'sidebar' == $_POST['mode'] ) {
 		$location = 'sidebar.php?a=b';
 	} elseif ( isset($_POST['save']) || isset($_POST['publish']) ) {
+		if ( 0 == $post_ID ) {
+			$location = 'page-new.php?message=11';
+			wp_redirect($location);
+ 		} else {
 		$status = get_post_status( $page_ID );
 
 		if ( isset( $_POST['publish'] ) ) {
@@ -44,13 +48,16 @@
 				case 'future':
 					$message = 7;
 					break;
+				case '':
+					$message = 11;
+					break;
 				default:
 					$message = 4;
 			}
 		} else {
 				$message = 'draft' == $status ? 8 : 1;
 		}
-
+		}
 		$location = add_query_arg( 'message', $message, get_edit_post_link( $page_ID, 'url' ) );
 	} elseif ( isset($_POST['addmeta']) ) {
 		$location = add_query_arg( 'message', 2, wp_get_referer() );
@@ -211,11 +218,6 @@
 	wp_redirect($url);
 	exit();
 	break;
-
-default:
-	wp_redirect('edit-pages.php');
-	exit();
-	break;
 } // end switch
 include('admin-footer.php');
 ?>
Index: post.php
===================================================================
--- post.php	(revision 12596)
+++ post.php	(working copy)
@@ -37,6 +37,10 @@
 		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);
+ 		} else {
 		$status = get_post_status( $post_ID );
 
 		if ( isset( $_POST['publish'] ) ) {
@@ -47,12 +51,16 @@
 				case 'future':
 					$message = 9;
 					break;
+				case '':
+					$message = 11;
+					break;
 				default:
 					$message = 6;
 			}
 		} 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'] ) {
@@ -253,11 +261,6 @@
 	wp_redirect($url);
 	exit();
 	break;
-
-default:
-	wp_redirect('edit.php');
-	exit();
-	break;
 } // end switch
 include('admin-footer.php');
 ?>
