Index: book_manager.module
===================================================================
--- book_manager.module	(revision 31)
+++ book_manager.module	(working copy)
@@ -45,6 +45,8 @@
       );
     }
     
+    $personal = _book_manager_get_book_owner($node->book['bid']) == $user->uid;
+    
     // Go through all the allowed types and add a 'create' link for
     // each node type that the user has rights to create.
     if (variable_get('book_manager_show_create_links_for_each_type', 0)) {
@@ -57,10 +59,7 @@
             $add_link = TRUE;
           }
           else if (user_access('add content to personal books')) {
-            global $user;
-            if (_book_manager_get_book_owner($node->book['bid']) == $user->uid) {
-              $add_link = TRUE;
-            }
+            $add_link = $personal;
           }
           if ($add_link) {
             $child_type_with_dashes = str_replace('_', '-', $child_type);
@@ -79,7 +78,7 @@
       // If the user can only add content to personal books, we need to give
       // them the standard "Add child page" link because the book module only
       // puts it in there for users with book permissions.
-      if (!user_access('add content to books') && !user_access('administer book outlines') && user_access('add content to personal books')) {
+      if (!user_access('add content to books') && !user_access('administer book outlines') && user_access('add content to personal books') && $personal) {
         $child_type = variable_get('book_child_type', 'book');
         if (($node->status == 1) && ($node->book['depth'] < MENU_MAX_DEPTH) && node_access('create', $child_type)) {
           $child_type_with_dashes = str_replace('_', '-', $child_type);
