Index: wp-includes/capabilities.php
===================================================================
--- wp-includes/capabilities.php	(revision 12330)
+++ wp-includes/capabilities.php	(working copy)
@@ -818,6 +818,14 @@
 		$page_author_data = get_userdata( $page->post_author );
 		//echo "current user id : $user_id, page author id: " . $page_author_data->ID . "<br />";
 		// If the user is the author...
+
+		if ('' != $page->post_author) {
+			$page_author_data = get_userdata( $page->post_author );
+		} else {
+			//No author set yet so default to current user for cap checks
+			$page_author_data = $author_data;
+		}
+
 		if ( $user_id == $page_author_data->ID ) {
 			// If the page is published...
 			if ( $page->post_status == 'publish' ) {
Index: wp-includes/post.php
===================================================================
--- wp-includes/post.php	(revision 12330)
+++ wp-includes/post.php	(working copy)
@@ -2281,12 +2281,13 @@
 	if ( empty($page) ) {
 		if ( isset( $GLOBALS['page'] ) && isset( $GLOBALS['page']->ID ) ) {
 			return get_post($GLOBALS['page'], $output, $filter);
+		} else if ( isset( $GLOBALS['post'] ) && isset( $GLOBALS['post']->ID ) ) {
+			return get_post($GLOBALS['post'], $output, $filter);
 		} else {
 			$page = null;
 			return $page;
 		}
 	}
-
 	$the_page = get_post($page, $output, $filter);
 	return $the_page;
 }
