Drupal 7 でフォームの変更を使用して、ノード フォームに別のボタンを追加しています。
function mymod_form_alter(&$form, &$form_state, $form_id) {
  $form[$key]['button'] = array(
    '#type' => 'submit',
    '#value' => t('Seach),
    '#limit_validation_errors' => array(),
    '#submit' => array('mymod_process'),
  );
 }
...
...
function mymod_process(&$form, &$form_state) {
  $form_state['rebuild'] = TRUE;    
  // Do my processing here...
}
$form_state['rebuild'] = TRUE;ボタンが押されたときにフォームの値を保持するように追加しました。これが機能するボタンを初めて押すと、カスタムボタンを2回押すと、次のエラーが表示されます。
PHP Fatal error:  Cannot create references to/from string offsets nor overloaded objects in /www/includes/common.inc on line 6430
次に、ページをリロードすると、drupal_set_message() は次のように報告します。
Notice: Array to string conversion in drupal_attributes() (line 2298 of /www/includes/common.inc).
を取り出す$form_state['rebuild'] = TRUE;と、エラーはなくなります。ただし、フォームの値は保持されません。このエラーを発生させずにフォームの値を保持する方法はありますか?