diff --git a/tests/workbench_access.test b/tests/workbench_access.test
index 08fd6f0..e7a9729 100644
--- a/tests/workbench_access.test
+++ b/tests/workbench_access.test
@@ -770,7 +770,8 @@ class WorkbenchAccessMenuTestCase extends WorkbenchAccessTestCase {
     drupal_flush_all_caches();
     $this->drupalGet('node');
     // If we hit an infinite loop, the page does not return listings.
-    $this->assertRaw('<a href="/drupal-7-workbench/node/30">B2b2</a>', t('Node listing page returns properly.'));
+    // Note the HTML fragent here, which assures success on various installs.
+    $this->assertRaw('node/30">B2b2</a>', t('Node listing page returns properly.'));
     $this->assertWorkbenchScheme('menu', $menu_name);
   }
 
diff --git a/workbench_access.module b/workbench_access.module
index 8796cd3..d88a6b8 100644
--- a/workbench_access.module
+++ b/workbench_access.module
@@ -396,6 +396,11 @@ function workbench_access_node_access($node, $op, $account) {
   // Get the access rules for this node.
   $result = FALSE; // Always default to FALSE.
   if (!empty($node->workbench_access) && !empty($account->workbench_access)) {
+    // In the case of "preview" the property may be a string. Not sure why.
+    // See https://drupal.org/node/1935190.
+    if (!is_array($node->workbench_access)) {
+      $node->workbench_access = array($node->workbench_access);
+    }
     $result = workbench_access_check($op, $type, array_filter($node->workbench_access), $account->workbench_access);
   }
 
@@ -614,6 +619,7 @@ function workbench_access_node_load($nodes, $types) {
       }
     }
   }
+
 }
 
 /**
@@ -1462,7 +1468,14 @@ function workbench_access_node_form_element(&$form, $form_state) {
   // Set default form options.
   $default = array();
   if (!empty($form['#node']->workbench_access)) {
-    $current = array_keys($form['#node']->workbench_access);
+    // In preview mode, this value can be a string.
+    // See http://drupal.org/node/1935190.
+    if (is_array($form['#node']->workbench_access)) {
+      $current = array_keys($form['#node']->workbench_access);
+    }
+    else {
+      $current = array($form['#node']->workbench_access);
+    }
     foreach ($current as $access_id) {
       if (isset($active['active'][$access_id])) {
         $default[] = $access_id;
