diff --git a/islandora.module b/islandora.module index 270edf4e..fba7206a 100644 --- a/islandora.module +++ b/islandora.module @@ -1976,7 +1976,7 @@ function islandora_islandora_datastream_access($op, AbstractDatastream $datastre $hooks = islandora_invoke_hook_list(ISLANDORA_DERVIATIVE_CREATION_HOOK, $object->models, array($object)); $hooks = islandora_filter_derivatives($hooks, array('force' => TRUE), $object); foreach ($hooks as $hook) { - if ($hook['destination_dsid'] == $datastream->id && + if (isset($hook['destination_dsid']) && $hook['destination_dsid'] == $datastream->id && (is_null($hook['source_dsid']) || islandora_datastream_access(ISLANDORA_VIEW_OBJECTS, $object[$hook['source_dsid']], $user))) { $applicable_hook = TRUE; break;