function drush_set_error

8.0.x drush.inc drush_set_error($error, $message = null, $output_label = "")
6.x drush.inc drush_set_error($error, $message = null, $output_label = "")
7.x drush.inc drush_set_error($error, $message = null, $output_label = "")
3.x drush.inc drush_set_error($error, $message = null)
4.x drush.inc drush_set_error($error, $message = null)
5.x drush.inc drush_set_error($error, $message = null, $output_label = "")
master drush.inc drush_set_error($error, $message = null, $output_label = "")

Set an error code for the error handling system.

Parameters

error: A text string identifying the type of error.

message: Optional. Error message to be logged. If no message is specified, hook_drush_help will be consulted, using a key of 'error:MY_ERROR_STRING'.

$output_label: Optional. Label to prepend to the error message.

Return value

Always returns FALSE, to allow you to return with false in the calling functions, such as <code>return drush_set_error('DRUSH_FRAMEWORK_ERROR')</code>

Related topics

144 calls to drush_set_error()
core_watchdog_query in commands/core/watchdog.drush.inc
Build a WHERE snippet based on given parameters.
DrushBatchContext::offsetSet in includes/batch.inc
DrushMakeProject::findDownloadLocation in commands/make/make.project.inc
Determine the location to download project to.
DrushMakeProject_Core::findDownloadLocation in commands/make/make.project.inc
Determine the location to download project to.
drush_archive_dump in commands/core/archive.drush.inc
Command callback. Generate site archive file.

... See full list

File

includes/drush.inc, line 1744
The drush API implementation and helpers.

Code

function drush_set_error($error, $message = null, $output_label = "") {
  $error_code = &drush_get_context('DRUSH_ERROR_CODE', DRUSH_SUCCESS);
  $error_code = DRUSH_FRAMEWORK_ERROR;

  $error_log = &drush_get_context('DRUSH_ERROR_LOG', array());

  if (is_numeric($error)) {
    $error = 'DRUSH_FRAMEWORK_ERROR';
  }

  $message = ($message) ? $message : drush_command_invoke_all('drush_help', 'error:' . $error);

  if (is_array($message)) {
    $message = implode("\n", $message);
  }

  $error_log[$error][] = $message;
  if (!drush_backend_packet('set_error', array('error' => $error, 'message' => $message))) {
    drush_log(($message) ? $output_label . $message : $output_label . $error, 'error', $error);
  }

  return FALSE;
}