diff --git a/delegator/plugins/tasks/node_edit.inc b/delegator/plugins/tasks/node_edit.inc
index f981d22673b071c484690362ce9529f12b0ea2fb..83b94f44106039660721c65b06c8dae78734ba37 100644
--- a/delegator/plugins/tasks/node_edit.inc
+++ b/delegator/plugins/tasks/node_edit.inc
@@ -71,7 +71,8 @@ function delegator_node_edit($node) {
   ctools_include('context-task-handler');
   $contexts = ctools_context_handler_get_task_contexts($task, '', array($node));
 
-  $output = ctools_context_handler_render($task, '', $contexts, array($node->nid));
+  $arg = array(isset($node->nid) ? $node->nid : $node->type);
+  $output = ctools_context_handler_render($task, '', $contexts, $arg);
   if ($output === FALSE) {
     // Fall back!
     // We've already built the form with the context, so we can't build it again, or
diff --git a/delegator/plugins/tasks/page.admin.inc b/delegator/plugins/tasks/page.admin.inc
index 917daac194f1a099ebc93f7194b09c4ae1b3bba1..eba9266dc60bef9d3dd1722d5527374405433ce1 100644
--- a/delegator/plugins/tasks/page.admin.inc
+++ b/delegator/plugins/tasks/page.admin.inc
@@ -240,7 +240,12 @@ function delegator_page_get_page_cache($name) {
     $cache = delegator_page_load($name);
   }
 
-  $cache->locked = ctools_object_cache_test('delegator_page', $name);
+  if ($name != '::new') {
+    $cache->locked = ctools_object_cache_test('delegator_page', $name);
+  }
+  else {
+    $cache->locked = FALSE;
+  }
 
   return $cache;
 }