Index: modules/node.views.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views/modules/node.views.inc,v
retrieving revision 1.97.4.9
diff -u -p -r1.97.4.9 node.views.inc
--- modules/node.views.inc	19 Mar 2010 23:40:58 -0000	1.97.4.9
+++ modules/node.views.inc	17 Apr 2010 06:39:30 -0000
@@ -708,6 +708,7 @@ function template_preprocess_views_view_
 function node_views_query_substitutions() {
   return array(
     ':node-administer-nodes' => intval(user_access('administer nodes')),
+    ':node-view-own-unpublished-nodes' => intval(user_access('view own unpublished content')),
   );
 }
 
Index: modules/node/views_handler_filter_node_status.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views/modules/node/views_handler_filter_node_status.inc,v
retrieving revision 1.2.4.2
diff -u -p -r1.2.4.2 views_handler_filter_node_status.inc
--- modules/node/views_handler_filter_node_status.inc	16 Apr 2010 22:19:48 -0000	1.2.4.2
+++ modules/node/views_handler_filter_node_status.inc	17 Apr 2010 06:39:30 -0000
@@ -9,6 +9,6 @@ class views_handler_filter_node_status e
 
   function query() {
     $table = $this->ensure_my_table();
-    $this->query->add_where($this->options['group'], "$table.status <> 0 OR ($table.uid = :user-current-user AND :user-current-user <> 0) OR :node-administer-nodes = 1");
+    $this->query->add_where($this->options['group'], "$table.status <> 0 OR ($table.uid = :user-current-user AND :user-current-user <> 0 AND :node-view-own-unpublished-nodes = 1) OR :node-administer-nodes = 1");
   }
 }
