Index: checkout.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/checkout/checkout.module,v
retrieving revision 1.11.2.11
diff -u -p -r1.11.2.11 checkout.module
--- checkout.module	24 Apr 2009 13:08:57 -0000	1.11.2.11
+++ checkout.module	8 May 2009 22:37:08 -0000
@@ -212,15 +212,19 @@ function checkout_handle_request($uid) {
 
   // Check whether to release a previously edited node.
   if ($previous_nid && (!$current_nid || $current_nid != $previous_nid)) {
-    checkout_release($previous_nid, $uid);
+    if (node_access('edit', node_load($previous_nid))){
+      checkout_release($previous_nid, $uid);
+    }
   }
 
   // Check whether to lock the current node.
   if ($current_nid && (!$previous_nid || $previous_nid != $current_nid)) {
     // Try to lock the node.
-    if (!checkout_node($current_nid, $uid)) {
-      // Node already locked: send back to refering page.
-      drupal_goto(referer_uri());
+    if (node_access('edit', node_load($current_nid))){
+      if (!checkout_node($current_nid, $uid)) {
+        // Node already locked: send back to refering page.
+        drupal_goto(referer_uri());
+      }
     }
   }
 }
