updates.
[silc.git] / lib / silcske / payload.c
index ea9313f10760585a5c14c522f49ba5685bbbd1e2..ce14c9faca8312f7d5e7decaa426563745d6c09d 100644 (file)
@@ -250,7 +250,7 @@ SilcSKEStatus silc_ske_payload_ke_decode(SilcSKE ske,
 {
   SilcSKEStatus status = SILC_SKE_STATUS_ERROR;
   SilcSKEKEPayload *payload;
-  unsigned char *x;
+  unsigned char *x = NULL;
   unsigned short x_len;
   unsigned int tot_len = 0, len2;
   int ret;
@@ -331,6 +331,8 @@ SilcSKEStatus silc_ske_payload_ke_decode(SilcSKE ske,
     silc_free(payload->pk_data);
   if (payload->sign_data)
     silc_free(payload->sign_data);
+  if (x)
+    silc_free(x);
   silc_free(payload);
   ske->status = status;
   return status;