New upstream release 0.90.3

i9cf
Benjamin Berg 5 years ago
parent 92c8d7efd3
commit dda2fc4ceb

1
.gitignore vendored

@ -1,2 +1,3 @@
/gnome-network-displays-0.90.1.tar.gz
/gnome-network-displays-0.90.2.tar.gz
/gnome-network-displays-0.90.3.tar.gz

@ -1,57 +0,0 @@
From 6afa893c7f58ad3a511791ae1f55bca5584c3196 Mon Sep 17 00:00:00 2001
From: Benjamin Berg <bberg@redhat.com>
Date: Fri, 20 Dec 2019 15:00:05 +0100
Subject: [PATCH] wfd: Always touch session for incoming packets
It turns out that some adapters (specifically MS v2 adapters) do not
reply with the session ID for the keep-alive packet. In this case the
gstreamer RTSP server will not automatically touch the GstRTSPSession
and we will run into the session timeout.
Fix this by simply touching all session for the client, for any received
response.
See: #20
---
src/wfd/wfd-client.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/src/wfd/wfd-client.c b/src/wfd/wfd-client.c
index 38b385e..258d1d0 100644
--- a/src/wfd/wfd-client.c
+++ b/src/wfd/wfd-client.c
@@ -275,11 +275,31 @@ wfd_client_idle_set_params (gpointer user_data)
return G_SOURCE_REMOVE;
}
+GstRTSPFilterResult
+wfd_client_touch_session_filter_func (GstRTSPClient *client,
+ GstRTSPSession *sess,
+ gpointer user_data)
+{
+ gst_rtsp_session_touch (sess);
+
+ return GST_RTSP_FILTER_KEEP;
+}
+
void
wfd_client_handle_response (GstRTSPClient * client, GstRTSPContext *ctx)
{
WfdClient *self = WFD_CLIENT (client);
+ /* Some sinks do not reply with the correct session-id. Which causes
+ * gst-rtsp-server to not touch the session, triggering a timeout
+ * even though the sink actually replied.
+ *
+ * Work around this by explicitly touching the session (again). And
+ * to do that, just touch all of them, which is acceptable as we will
+ * only have one.
+ */
+ gst_rtsp_client_session_filter (client, wfd_client_touch_session_filter_func, NULL);
+
/* Track the initialization process and possibly trigger the
* next state of the connection establishment. */
switch (self->init_state)
--
2.24.1

@ -1,6 +1,6 @@
Name: gnome-network-displays
Version: 0.90.2
Release: 3%{?dist}
Version: 0.90.3
Release: 1%{?dist}
Summary: Stream the desktop to Wi-Fi Display capable devices
# The icon is licensed CC-BY-SA
@ -27,8 +27,6 @@ Requires: gtk3
Requires: hicolor-icon-theme
Requires: NetworkManager-wifi
Patch0: 0001-wfd-Always-touch-session-for-incoming-packets.patch
%description
GNOME Network Displays allows you to cast your desktop to a remote display.
Currently implemented is support for casting to Wi-Fi Display capable devices
@ -58,6 +56,9 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.appdata.xml
%{_metainfodir}/org.gnome.NetworkDisplays.appdata.xml
%changelog
* Wed Apr 29 2020 Benjamin Berg <bberg@redhat.com> - 0.90.3-1
- New upstream release 0.90.3
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.90.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

@ -1 +1 @@
SHA512 (gnome-network-displays-0.90.2.tar.gz) = b1a52a86678be9f6a8849b6524f6c89f983734a3984f30797f98b47353eee63fa94f28d8cd41e8a8ed17727e9084b4185688789e3cee25727182c7dfaa6a32c7
SHA512 (gnome-network-displays-0.90.3.tar.gz) = bc25a51b8e93ca8f3c7d4c99db8a17b8ede0e9d312027b2423ad8fd9642355ebe1c48c5bd0a3dc1c4ba3dc98b3216ba4ff5dfbeff3ebad8849b1428b1584ca76

Loading…
Cancel
Save