diff --git a/sml/src/sml_attention_response.c b/sml/src/sml_attention_response.c index f7d65c3..e3d7e90 100644 --- a/sml/src/sml_attention_response.c +++ b/sml/src/sml_attention_response.c @@ -49,7 +49,7 @@ sml_attention_response *sml_attention_response_parse(sml_buffer *buf){ return msg; error: - free(msg); + sml_attention_response_free(msg); return 0; } diff --git a/sml/src/sml_close_request.c b/sml/src/sml_close_request.c index 66bee57..a674634 100644 --- a/sml/src/sml_close_request.c +++ b/sml/src/sml_close_request.c @@ -55,7 +55,7 @@ sml_close_request * sml_close_request_parse(sml_buffer *buf) { return msg; error: - free(msg); + sml_close_request_free(msg); return 0; } diff --git a/sml/src/sml_close_response.c b/sml/src/sml_close_response.c index 67e8169..c348530 100644 --- a/sml/src/sml_close_response.c +++ b/sml/src/sml_close_response.c @@ -41,7 +41,7 @@ sml_close_response *sml_close_response_parse(sml_buffer *buf) { return msg; error: - free(msg); + sml_close_response_free(msg); return 0; } diff --git a/sml/src/sml_get_list_request.c b/sml/src/sml_get_list_request.c index 37aca53..e7ae12e 100644 --- a/sml/src/sml_get_list_request.c +++ b/sml/src/sml_get_list_request.c @@ -88,7 +88,7 @@ sml_get_list_request *sml_get_list_request_parse(sml_buffer *buf) { return msg; error: - free(msg); + sml_get_list_request_free(msg); return 0; } diff --git a/sml/src/sml_get_list_response.c b/sml/src/sml_get_list_response.c index 32e54e9..65a332e 100644 --- a/sml/src/sml_get_list_response.c +++ b/sml/src/sml_get_list_response.c @@ -60,7 +60,7 @@ sml_get_list_response *sml_get_list_response_parse(sml_buffer *buf) { return msg; error: - free(msg); + sml_get_list_response_free(msg); return 0; } diff --git a/sml/src/sml_get_profile_pack_request.c b/sml/src/sml_get_profile_pack_request.c index f442739..631d93f 100644 --- a/sml/src/sml_get_profile_pack_request.c +++ b/sml/src/sml_get_profile_pack_request.c @@ -112,7 +112,7 @@ sml_get_profile_pack_request *sml_get_profile_pack_request_parse(sml_buffer *buf return msg; error: - free(msg); + sml_get_profile_pack_request_free(msg); return 0; } diff --git a/sml/src/sml_list.c b/sml/src/sml_list.c index 214f37b..0823302 100644 --- a/sml/src/sml_list.c +++ b/sml/src/sml_list.c @@ -96,6 +96,7 @@ sml_list *sml_list_parse(sml_buffer *buf) { error: buf->error = 1; + sml_list_free(start); return 0; } diff --git a/sml/src/sml_message.c b/sml/src/sml_message.c index 4fa43d5..d99894a 100644 --- a/sml/src/sml_message.c +++ b/sml/src/sml_message.c @@ -74,7 +74,7 @@ sml_message *sml_message_parse(sml_buffer *buf) { error: // TODO: free encapsulated stuff - free(msg); + sml_message_free(msg); return 0; } diff --git a/sml/src/sml_open_request.c b/sml/src/sml_open_request.c index 4c6f5c7..f479302 100644 --- a/sml/src/sml_open_request.c +++ b/sml/src/sml_open_request.c @@ -106,7 +106,7 @@ sml_open_request *sml_open_request_parse(sml_buffer *buf) { return msg; error: - free(msg); + sml_open_request_free(msg); return 0; } diff --git a/sml/src/sml_open_response.c b/sml/src/sml_open_response.c index b3cca11..b8c5507 100644 --- a/sml/src/sml_open_response.c +++ b/sml/src/sml_open_response.c @@ -55,7 +55,7 @@ sml_open_response *sml_open_response_parse(sml_buffer *buf) { return msg; error: - free(msg); + sml_open_response_free(msg); return 0; } diff --git a/sml/src/sml_status.c b/sml/src/sml_status.c index 5ddf406..359e5ff 100644 --- a/sml/src/sml_status.c +++ b/sml/src/sml_status.c @@ -54,7 +54,7 @@ sml_status *sml_status_parse(sml_buffer *buf) { break; } if (sml_buf_has_errors(buf)) { - free(state); + sml_status_free(state); return 0; } diff --git a/sml/src/sml_time.c b/sml/src/sml_time.c index 20dbe57..4b40afb 100644 --- a/sml/src/sml_time.c +++ b/sml/src/sml_time.c @@ -44,7 +44,7 @@ sml_time *sml_time_parse(sml_buffer *buf) { return tme; error: - free(tme); + sml_time_free(tme); return 0; } diff --git a/sml/src/sml_value.c b/sml/src/sml_value.c index bf2e757..bc29804 100644 --- a/sml/src/sml_value.c +++ b/sml/src/sml_value.c @@ -96,7 +96,7 @@ sml_value *sml_value_parse(sml_buffer *buf) { break; } if (sml_buf_has_errors(buf)) { - free(value); + sml_value_free(value); return 0; }