[Spice-devel] [PATCH] channel-webdav: avoid possible crash
Victor Toso
victortoso at redhat.com
Tue Oct 15 09:58:03 UTC 2019
From: Victor Toso <me at victortoso.com>
In case PhodavServer or SoupServer are NULL, we should stop and
return.
Signed-off-by: Victor Toso <victortoso at redhat.com>
---
Rebased. Patch was related user report of crash in FlexVDI client [0].
Being careful in this not-hot path should be okay IMHO.
[0] https://lists.freedesktop.org/archives/spice-devel/2019-May/049070.html
src/channel-webdav.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/channel-webdav.c b/src/channel-webdav.c
index fb25084..de2843e 100644
--- a/src/channel-webdav.c
+++ b/src/channel-webdav.c
@@ -361,12 +361,17 @@ static void start_client(SpiceWebdavChannel *self)
GIOStream *peer = NULL;
SpiceSession *session;
SoupServer *server;
+ PhodavServer* phodav_server;
GSocketAddress *addr;
GError *error = NULL;
bool started;
session = spice_channel_get_session(SPICE_CHANNEL(self));
- server = phodav_server_get_soup_server(spice_session_get_webdav_server(session));
+ phodav_server = spice_session_get_webdav_server(session);
+ g_return_if_fail(phodav_server != NULL);
+
+ server = phodav_server_get_soup_server(phodav_server);
+ g_return_if_fail(server != NULL);
CHANNEL_DEBUG(self, "starting client %" G_GINT64_FORMAT, c->demux.client);
--
2.21.0
More information about the Spice-devel
mailing list