client: main channel migration: do partial cleanup when switching hosts

Implement on_disconnect_mig_src and on_connect_mig_target in order to avoid
unnecessary cleanups done in on_(disconnet|connect).
In addition, do not request guest display settings changes after migration.
This commit is contained in:
Yonit Halperin 2011-09-18 22:50:50 +03:00
parent 510a4ff7c4
commit f91d202eb3
2 changed files with 11 additions and 0 deletions

View File

@ -493,6 +493,15 @@ void RedClient::on_disconnect()
(*sync_event)->wait();
}
void RedClient::on_disconnect_mig_src()
{
_application.deactivate_interval_timer(*_agent_timer);
delete[] _agent_msg_data;
_agent_msg_data = NULL;
_agent_msg_pos = 0;
_agent_tokens = 0;
}
void RedClient::delete_channels()
{
Lock lock(_channels_lock);

View File

@ -279,6 +279,8 @@ protected:
virtual void on_connecting();
virtual void on_connect();
virtual void on_disconnect();
virtual void on_connect_mig_target() {}
virtual void on_disconnect_mig_src();
private:
void on_channel_disconnected(RedChannel& channel);