After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 763582 - Possible race in subscribtion handling
Possible race in subscribtion handling
Status: RESOLVED FIXED
Product: GUPnP
Classification: Other
Component: gupnp
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GUPnP Maintainers
GUPnP Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-03-13 22:26 UTC by Jens Georg
Modified: 2019-05-28 11:23 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jens Georg 2016-03-13 22:26:43 UTC
There is at least one potential issue:

if the subscribe message is canceled before a SID is set, the idle callback emit_notifications will not be canceled and run forever.
Comment 1 Sven Neumann 2018-02-14 08:43:18 UTC
You are probably refering to this code, which does indeed look dangerous to me:

        if (proxy->priv->sid == NULL)
                /* No SID */
                if (G_LIKELY (proxy->priv->subscribed))
                        /* subscription in progress, delay emision! */
                        return TRUE;

The idle callback will then be called again and again.