diff --git includes/ajax.inc includes/ajax.inc
index f77bd90..39489ff 100644
--- includes/ajax.inc
+++ includes/ajax.inc
@@ -214,9 +214,10 @@ function ajax_form_callback() {
   if (function_exists($callback)) {
     $html = $callback($form, $form_state);
 
-    // If the returned value is a string, assume it is HTML and create
-    // a command object to return automatically.
+    // If the returned value is a string, assume it is HTML, add the status
+    // messages, and create a command object to return automatically.
     if (is_string($html)) {
+      $html = theme('status_messages') . $html;
       $commands = array();
       $commands[] = ajax_command_replace(NULL, $html);
     }
diff --git modules/poll/poll.module modules/poll/poll.module
index 4f0c14d..f1668f1 100644
--- modules/poll/poll.module
+++ modules/poll/poll.module
@@ -382,7 +382,7 @@ function _poll_choice_form($key, $chid = NULL, $value = '', $votes = 0, $weight
 function poll_choice_js($form, $form_state) {
   $choice_form = $form['choice_wrapper']['choice'];
 
-  return theme('status_messages') . drupal_render($choice_form);
+  return drupal_render($choice_form);
 }
 
 /**
