[Spice-devel] [PATCH spice-streaming-agent v3 4/4] Stub to handle errors from server

Lukáš Hrázký lhrazky at redhat.com
Wed Feb 21 10:31:18 UTC 2018


On Tue, 2018-02-20 at 20:48 +0000, Frediano Ziglio wrote:
> Base error message handling.
> 
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
>  src/spice-streaming-agent.cpp | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/src/spice-streaming-agent.cpp b/src/spice-streaming-agent.cpp
> index 31c655c..343b252 100644
> --- a/src/spice-streaming-agent.cpp
> +++ b/src/spice-streaming-agent.cpp
> @@ -81,6 +81,7 @@ static int have_something_to_read(int timeout)
>  
>  static void handle_stream_capabilities(uint32_t len);
>  static void handle_stream_start_stop(uint32_t len);
> +static void handle_stream_error(uint32_t len);
>  
>  static void read_command_from_device(void)
>  {
> @@ -101,6 +102,8 @@ static void read_command_from_device(void)
>      switch (hdr.type) {
>      case STREAM_TYPE_CAPABILITIES:
>          return handle_stream_capabilities(hdr.size);
> +    case STREAM_TYPE_NOTIFY_ERROR:
> +        return handle_stream_error(hdr.size);
>      case STREAM_TYPE_START_STOP:
>          return handle_stream_start_stop(hdr.size);
>      }
> @@ -154,6 +157,12 @@ static void handle_stream_capabilities(uint32_t len)
>      }
>  }
>  
> +static void handle_stream_error(uint32_t len)
> +{
> +    // TODO read message and use it
> +    throw std::runtime_error("got an error message from server");
> +}
> +
>  static int read_command(bool blocking)
>  {
>      int timeout = blocking?-1:0;

You didn't have to make it that explicit for me :) But thanks... I
don't find this commit necessary, it doesn't change the behavior and
kind of just adds noise to the history...?


More information about the Spice-devel mailing list