[Android] UPnP: Add patch to fix discovery
Geoffrey Métais
git at videolan.org
Thu Aug 8 13:53:50 CEST 2019
vlc-android | branch: 3.2.x | Geoffrey Métais <geoffrey.metais at gmail.com> | Tue Aug 6 15:44:35 2019 +0200| [dcee75d9251d205219d0e0b298027230e670638a] | committer: Geoffrey Métais
UPnP: Add patch to fix discovery
This patch was in 3.1 release then disappeared.
(cherry picked from commit 055078a68f2e3a6bf1328de0d414016d0bd01a25)
> https://code.videolan.org/videolan/vlc-android/commit/dcee75d9251d205219d0e0b298027230e670638a
---
...-upnp-Fix-potential-race-during-tear-down.patch | 30 ++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/libvlc/patches/vlc3/libvlc_patches_0007-upnp-Fix-potential-race-during-tear-down.patch b/libvlc/patches/vlc3/libvlc_patches_0007-upnp-Fix-potential-race-during-tear-down.patch
new file mode 100644
index 000000000..b885c9800
--- /dev/null
+++ b/libvlc/patches/vlc3/libvlc_patches_0007-upnp-Fix-potential-race-during-tear-down.patch
@@ -0,0 +1,30 @@
+From 584a75d9091f146dc001ef4ddad5c5a390dcd0cc Mon Sep 17 00:00:00 2001
+Message-Id: <584a75d9091f146dc001ef4ddad5c5a390dcd0cc.1565098819.git.geoffrey.metais at gmail.com>
+From: =?UTF-8?q?Hugo=20Beauz=C3=A9e-Luyssen?= <hugo at beauzee.fr>
+Date: Fri, 15 Mar 2019 15:41:50 +0100
+Subject: [PATCH] upnp: Fix potential race during tear down.
+
+If two threads call UpnpFinish at the same time (or more precisely, if a
+2nd thread calls UpnpFinish before the first one sets UpnpSdkInit to 0)
+we can end up double releasing most libupnp resources
+---
+ modules/services_discovery/upnp.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/services_discovery/upnp.cpp b/modules/services_discovery/upnp.cpp
+index f1037c82c8..16ed325724 100644
+--- a/modules/services_discovery/upnp.cpp
++++ b/modules/services_discovery/upnp.cpp
+@@ -1709,8 +1709,8 @@ void UpnpInstanceWrapper::release(bool isSd)
+ p_delete = s_instance;
+ s_instance = NULL;
+ }
+- vlc_mutex_unlock( &s_lock );
+ delete p_delete;
++ vlc_mutex_unlock( &s_lock );
+ }
+
+ UpnpClient_Handle UpnpInstanceWrapper::handle() const
+--
+2.20.1
+
More information about the Android
mailing list