GUACAMOLE-249: Do not attempt to free SVC-specific data if it hasn't actually been allocated.
diff --git a/src/protocols/rdp/channels/pipe-svc.c b/src/protocols/rdp/channels/pipe-svc.c
index e918fe7..2db42d6 100644
--- a/src/protocols/rdp/channels/pipe-svc.c
+++ b/src/protocols/rdp/channels/pipe-svc.c
@@ -209,6 +209,8 @@
 void guac_rdp_pipe_svc_process_terminate(guac_rdp_common_svc* svc) {
 
     guac_rdp_pipe_svc* pipe_svc = (guac_rdp_pipe_svc*) svc->data;
+    if (pipe_svc == NULL)
+        return;
 
     /* Remove and free SVC */
     guac_rdp_pipe_svc_remove(svc->client, svc->name);
diff --git a/src/protocols/rdp/channels/rdpdr/rdpdr.c b/src/protocols/rdp/channels/rdpdr/rdpdr.c
index f67a55b..e04bc9d 100644
--- a/src/protocols/rdp/channels/rdpdr/rdpdr.c
+++ b/src/protocols/rdp/channels/rdpdr/rdpdr.c
@@ -150,6 +150,8 @@
 void guac_rdpdr_process_terminate(guac_rdp_common_svc* svc) {
 
     guac_rdpdr* rdpdr = (guac_rdpdr*) svc->data;
+    if (rdpdr == NULL)
+        return;
 
     int i;