mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-15 00:44:19 +09:00
[winpr,pubsub] check return of PubSub_Subscribe
This commit is contained in:
@@ -271,16 +271,18 @@ static void wlf_disp_OnGraphicsReset(void* context, const GraphicsResetEventArgs
|
||||
|
||||
wlfDispContext* wlf_disp_new(wlfContext* wlc)
|
||||
{
|
||||
wlfDispContext* ret = nullptr;
|
||||
wPubSub* pubSub = nullptr;
|
||||
rdpSettings* settings = nullptr;
|
||||
|
||||
if (!wlc || !wlc->common.context.settings || !wlc->common.context.pubSub)
|
||||
return nullptr;
|
||||
|
||||
settings = wlc->common.context.settings;
|
||||
pubSub = wlc->common.context.pubSub;
|
||||
ret = calloc(1, sizeof(wlfDispContext));
|
||||
rdpSettings* settings = wlc->common.context.settings;
|
||||
wPubSub* pubSub = wlc->common.context.pubSub;
|
||||
|
||||
if (PubSub_SubscribeActivated(pubSub, wlf_disp_OnActivated) < 0)
|
||||
return nullptr;
|
||||
if (PubSub_SubscribeGraphicsReset(pubSub, wlf_disp_OnGraphicsReset) < 0)
|
||||
return nullptr;
|
||||
|
||||
wlfDispContext* ret = calloc(1, sizeof(wlfDispContext));
|
||||
|
||||
if (!ret)
|
||||
return nullptr;
|
||||
@@ -290,8 +292,6 @@ wlfDispContext* wlf_disp_new(wlfContext* wlc)
|
||||
WINPR_ASSERTING_INT_CAST(int, freerdp_settings_get_uint32(settings, FreeRDP_DesktopWidth));
|
||||
ret->lastSentHeight = ret->targetHeight =
|
||||
WINPR_ASSERTING_INT_CAST(int, freerdp_settings_get_uint32(settings, FreeRDP_DesktopHeight));
|
||||
PubSub_SubscribeActivated(pubSub, wlf_disp_OnActivated);
|
||||
PubSub_SubscribeGraphicsReset(pubSub, wlf_disp_OnGraphicsReset);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
@@ -197,9 +197,12 @@ static BOOL wl_pre_connect(freerdp* instance)
|
||||
return FALSE;
|
||||
if (!freerdp_settings_set_uint32(settings, FreeRDP_OsMinorType, OSMINORTYPE_NATIVE_WAYLAND))
|
||||
return FALSE;
|
||||
PubSub_SubscribeChannelConnected(instance->context->pubSub, wlf_OnChannelConnectedEventHandler);
|
||||
PubSub_SubscribeChannelDisconnected(instance->context->pubSub,
|
||||
wlf_OnChannelDisconnectedEventHandler);
|
||||
if (PubSub_SubscribeChannelConnected(instance->context->pubSub,
|
||||
wlf_OnChannelConnectedEventHandler) < 0)
|
||||
return FALSE;
|
||||
if (PubSub_SubscribeChannelDisconnected(instance->context->pubSub,
|
||||
wlf_OnChannelDisconnectedEventHandler) < 0)
|
||||
return FALSE;
|
||||
|
||||
if (freerdp_settings_get_bool(settings, FreeRDP_Fullscreen))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user