summaryrefslogtreecommitdiffstats
path: root/client/red_client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'client/red_client.cpp')
-rw-r--r--client/red_client.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/client/red_client.cpp b/client/red_client.cpp
index 4a6d3fda..a74fd107 100644
--- a/client/red_client.cpp
+++ b/client/red_client.cpp
@@ -340,7 +340,9 @@ void AgentTimer::response(AbstractProcessLoop& events_loop)
{
Application* app = static_cast<Application*>(events_loop.get_owner());
app->deactivate_interval_timer(this);
- THROW_ERR(SPICEC_ERROR_CODE_AGENT_TIMEOUT, "vdagent timeout");
+
+ LOG_WARN("timeout while waiting for agent response");
+ _client->send_main_attach_channels();
}
class MainChannelLoop: public MessageHandlerImp<RedClient, SPICE_CHANNEL_MAIN> {
@@ -371,7 +373,7 @@ RedClient::RedClient(Application& application)
, _agent_out_msg_size (0)
, _agent_out_msg_pos (0)
, _agent_tokens (0)
- , _agent_timer (new AgentTimer())
+ , _agent_timer (new AgentTimer(this))
, _agent_caps_size(0)
, _agent_caps(NULL)
, _migrate (*this)