message: core: fix error when callback is nullptr
  We cannot rely on the callback in case the callback passed to us is
  nullptr.
diff: @@ -266,6 +266,7 @@ void MavlinkCommandSender::receive_command_ack(mavlink_message_t message)
  void MavlinkCommandSender::receive_timeout(const CommandIdentification& identification)
  {
  + bool found_command = false;
  CommandResultCallback temp_callback = nullptr;
  std::pair<Result, float> temp_result{Result::UnknownError, NAN};
  @@ -278,6 +279,8 @@ void MavlinkCommandSender::receive_timeout(const CommandIdentification& identifi
  continue;
  }
  + found_command = true;
  +
  if (work->retries_to_do > 0) {
  // We're not sure the command arrived, let's retransmit.
  LogWarn() << "sending again after "
  @@ -310,8 +313,9 @@ void MavlinkCommandSender::receive_timeout(const CommandIdentification& identifi
  if (temp_callback != nullptr) {
  call_callback(temp_callback, temp_result.first, temp_result.second);
  + }
  - } else {
  + if (!found_command) {
  LogWarn() << "Timeout for unexisting command: " << static_cast<int>(identification.command)
  << "! Ignoring...";
  }
  