Fixed #6197: NULL check in urbdrc
authorakallabeth <akallabeth@posteo.net>
Wed, 20 May 2020 06:59:44 +0000 (08:59 +0200)
committerakallabeth <akallabeth@posteo.net>
Wed, 20 May 2020 13:41:24 +0000 (15:41 +0200)
(cherry picked from commit fb3a0e6b5ae3b4e6523509a0ec0c522425968989)

channels/urbdrc/client/urbdrc_main.c

index 5c8483b..6f383ec 100644 (file)
@@ -668,12 +668,13 @@ static UINT urbdrc_plugin_initialize(IWTSPlugin* pPlugin, IWTSVirtualChannelMana
 {
        UINT status;
        URBDRC_PLUGIN* urbdrc = (URBDRC_PLUGIN*)pPlugin;
-       IUDEVMAN* udevman = urbdrc->udevman;
+       IUDEVMAN* udevman;
        char channelName[sizeof(URBDRC_CHANNEL_NAME)] = { URBDRC_CHANNEL_NAME };
 
-       if (!urbdrc)
+       if (!urbdrc || !urbdrc->udevman)
                return ERROR_INVALID_PARAMETER;
 
+       udevman = urbdrc->udevman;
        urbdrc->listener_callback =
            (URBDRC_LISTENER_CALLBACK*)calloc(1, sizeof(URBDRC_LISTENER_CALLBACK));