diff --git a/apachesolr_search.module b/apachesolr_search.module
index 3ec9236..e347da4 100644
--- a/apachesolr_search.module
+++ b/apachesolr_search.module
@@ -1030,7 +1030,8 @@ function apachesolr_search_run($name, array $params = array(), $solrsort = '', $
   list($final_query, $response) = apachesolr_do_query($query, $page);
   $solr_id = $query->solr('getId');
   apachesolr_has_searched($solr_id, TRUE);
-  return apachesolr_search_process_response($response, $final_query);
+  $process_response_callback = variable_get('apachesolr_search_process_response_callback', 'apachesolr_search_process_response');
+  return call_user_func($callback, $response, $final_query);
 }
 
 function apachesolr_search_basic_params(DrupalSolrQueryInterface $query = NULL) {
