Merge pull request #8 from glyptodon/fix-rdp-segfault

GUAC-945: Do not attempt to load drdynvc unless Display Update is in use.
This commit is contained in:
James Muehlner 2014-12-03 16:01:36 -08:00
commit cbab9e2efb

View File

@ -213,12 +213,6 @@ BOOL rdp_freerdp_pre_connect(freerdp* instance) {
freerdp_register_addin_provider(freerdp_channels_load_static_addin_entry, 0); freerdp_register_addin_provider(freerdp_channels_load_static_addin_entry, 0);
#endif #endif
/* Load virtual channel management plugin */
if (freerdp_channels_load_plugin(channels, instance->settings,
"drdynvc", instance->settings))
guac_client_log(client, GUAC_LOG_WARNING,
"Failed to load drdynvc plugin.");
#ifdef HAVE_FREERDP_EVENT_PUBSUB #ifdef HAVE_FREERDP_EVENT_PUBSUB
/* Subscribe to and handle channel connected events */ /* Subscribe to and handle channel connected events */
PubSub_SubscribeChannelConnected(context->pubSub, PubSub_SubscribeChannelConnected(context->pubSub,
@ -226,6 +220,12 @@ BOOL rdp_freerdp_pre_connect(freerdp* instance) {
#endif #endif
#ifdef HAVE_FREERDP_DISPLAY_UPDATE_SUPPORT #ifdef HAVE_FREERDP_DISPLAY_UPDATE_SUPPORT
/* Load virtual channel management plugin */
if (freerdp_channels_load_plugin(channels, instance->settings,
"drdynvc", instance->settings))
guac_client_log(client, GUAC_LOG_WARNING,
"Failed to load drdynvc plugin.");
/* Init display update plugin */ /* Init display update plugin */
guac_client_data->disp = guac_rdp_disp_alloc(); guac_client_data->disp = guac_rdp_disp_alloc();
guac_rdp_disp_load_plugin(instance->context); guac_rdp_disp_load_plugin(instance->context);