diff --git a/sites/all/modules/view_unpublished/view_unpublished.module b/sites/all/modules/view_unpublished/view_unpublished.module
index 0af27e4..d2cd81c 100644
--- a/sites/all/modules/view_unpublished/view_unpublished.module
+++ b/sites/all/modules/view_unpublished/view_unpublished.module
@@ -93,3 +93,29 @@ function view_unpublished_views_query_substitutions() {
 
   return $substitutions;
 }
+
+/**
+ * Implementation of hook_clone_access_alter().
+ *
+ * Provide support for clone module - http://drupal.org/project/node_clone.
+ */
+function view_unpublished_clone_access_alter(&$access, $node) {
+  // Only check permissions on nodes that are unpublished and where access is currently denied by node_clone.
+  if (!$access && $node->status == 0 && module_exists('clone')) {
+    // Regretfully we need to re-check prior conditions (see clone_access_cloning())
+    global $user;
+    $new_access = clone_is_permitted($node->type) && (user_access('clone node') || ($user->uid && ($node->uid == $user->uid) && user_access('clone own nodes')));
+    $new_access = $new_access && (filter_access($node->format) && node_access('create', $node->type));
+    
+    // Only if prior conditions allowed access do we check for unpublished access
+    if ($new_access) {
+      if (user_access('view all unpublished content')) {
+        $access = TRUE;
+      }
+
+      if (user_access('view unpublished ' . $node->type . ' content')) {
+        $access = TRUE;
+      }
+    }
+  }
+}
