updates
[silc.git] / lib / silccore / silcchannel.c
index 6bab3c22b87409b81408c9943c6c96e5f206faec..0784a3b69ba2cc4d9911a13e4553bcc2e21aae26 100644 (file)
@@ -172,8 +172,8 @@ void silc_channel_payload_list_free(SilcDList list)
   while ((entry = silc_dlist_get(list)) != SILC_LIST_END) {
     silc_free(entry->channel_name);
     silc_free(entry->channel_id);
-    silc_free(entry);
     silc_dlist_del(list, entry);
+    silc_free(entry);
   }
 
   silc_dlist_uninit(list);
@@ -335,7 +335,7 @@ silc_channel_message_payload_parse(unsigned char *payload,
   if (ret == -1)
     goto err;
 
-  if (new->data_len < 1 || new->data_len > buffer.len) {
+  if (new->data_len > buffer.len) {
     SILC_LOG_ERROR(("Incorrect channel message payload in packet, "
                    "packet dropped"));
     goto err;