diff --git a/plugins/content_types/block/block.inc b/plugins/content_types/block/block.inc
index 9d55e8a..494a840 100644
--- a/plugins/content_types/block/block.inc
+++ b/plugins/content_types/block/block.inc
@@ -286,8 +286,12 @@ function ctools_block_content_type_admin_info($subtype, $conf) {
   list($module, $delta) = _ctools_block_get_module_delta($subtype, $conf);
   $block = (object) module_invoke($module, 'block_view', $delta);
 
-  // Sanitize the block because <script> tags can hose javascript up:
+  // Sanitize the block because <script> tags can hose javascript up.
   if (!empty($block->content)) {
+    // If this isn't a simple string then it needs to be rendered first.
+    if (!is_string($block->content)) {
+      $block->content = drupal_render($block->content);
+    }
     $block->content = filter_xss_admin($block->content);
   }
 
