Index: wp-admin/inline-uploading.php
===================================================================
--- wp-admin/inline-uploading.php	(revision 3443)
+++ wp-admin/inline-uploading.php	(working copy)
@@ -120,8 +120,12 @@
 	$current_3 = ' class="current"';
 }
 
-if (! current_user_can('edit_others_posts') )
-	$and_user = "AND post_author = " . $user_ID;
+if ( !current_user_can('edit_others_posts') && !current_user_can('edit_others_pages') )
+	$and_user = "AND post_author = $user_ID";
+elseif (! current_user_can('edit_others_posts') )
+	$and_user = "AND (post_author = $user_ID OR post_status != 'static')";
+elseif (! current_user_can('edit_others_pages') ) 
+	$and_user = "AND (post_author = $user_ID OR post_status = 'static')";
 
 if ( $last )
 	$start = $wpdb->get_var("SELECT count(ID) FROM $wpdb->posts WHERE post_status = 'attachment' $and_user $and_post") - $num;
Index: wp-admin/admin-functions.php
===================================================================
--- wp-admin/admin-functions.php	(revision 3443)
+++ wp-admin/admin-functions.php	(working copy)
@@ -22,9 +22,6 @@
 			$_POST['post_author'] = (int) $_POST['user_ID'];
 		}
 
-	if (($_POST['post_author'] != $_POST['user_ID']) && !current_user_can('edit_others_posts'))
-		die(__('You cannot post as this user.'));
-
 	// What to do based on which button they pressed
 	if ('' != $_POST['saveasdraft'])
 		$_POST['post_status'] = 'draft';
@@ -39,6 +36,12 @@
 
 	if ('publish' == $_POST['post_status'] && !current_user_can('publish_posts'))
 		$_POST['post_status'] = 'draft';
+		
+	if (($_POST['post_author'] != $_POST['user_ID'])) { //its not their post/page
+	 	if (($_POST['post_status'] != 'static' && !current_user_can('edit_others_posts')) ||
+	 		($_POST['post_status'] == 'static' && !current_user_can('edit_others_pages')))
+			die(__('You cannot post as this user.'));
+	}
 
 	if ('static' == $_POST['post_status'] && !current_user_can('edit_pages'))
 		die(__('This user cannot edit pages.'));
@@ -142,9 +145,6 @@
 			$_POST['post_author'] = (int) $_POST['user_ID'];
 		}
 
-	if (($_POST['post_author'] != $_POST['user_ID']) && !current_user_can('edit_others_posts'))
-		die(__('You cannot post as this user.'));
-
 	// What to do based on which button they pressed
 	if ('' != $_POST['saveasdraft'])
 		$_POST['post_status'] = 'draft';
@@ -159,6 +159,12 @@
 
 	if ('publish' == $_POST['post_status'] && !current_user_can('publish_posts'))
 		$_POST['post_status'] = 'draft';
+		
+	if (($_POST['post_author'] != $_POST['user_ID'])) { //its not their post/page
+	 	if (($_POST['post_status'] != 'static' && !current_user_can('edit_others_posts')) ||
+	 		($_POST['post_status'] == 'static' && !current_user_can('edit_others_pages')))
+			die(__('You cannot post as this user.'));
+	}
 
 	if ('static' == $_POST['post_status'] && !current_user_can('edit_pages'))
 		die(__('This user cannot edit pages.'));
Index: wp-admin/admin-db.php
===================================================================
--- wp-admin/admin-db.php	(revision 3443)
+++ wp-admin/admin-db.php	(working copy)
@@ -45,7 +45,7 @@
 	
 	$user = new WP_User( $user_id );
 	
-	if ( ! $user->has_cap('edit_others_posts') ) {
+	if ( ! $user->has_cap('edit_others_posts') && !$user->has_cap('edit_others_pages') ) {
 		if ( $user->has_cap('edit_posts') || $exclude_zeros == false )
 			return array($user->id);
 		else 
Index: wp-admin/upgrade-schema.php
===================================================================
--- wp-admin/upgrade-schema.php	(revision 3443)
+++ wp-admin/upgrade-schema.php	(working copy)
@@ -274,6 +274,7 @@
 	$role->add_cap('unfiltered_html');
 	$role->add_cap('edit_posts');
 	$role->add_cap('edit_others_posts');
+	$role->add_cap('edit_others_pages');
 	$role->add_cap('edit_published_posts');
 	$role->add_cap('publish_posts');
 	$role->add_cap('edit_pages');
@@ -299,6 +300,7 @@
 	$role->add_cap('unfiltered_html');
 	$role->add_cap('edit_posts');
 	$role->add_cap('edit_others_posts');
+	$role->add_cap('edit_others_pages');
 	$role->add_cap('edit_published_posts');
 	$role->add_cap('publish_posts');
 	$role->add_cap('edit_pages');
