Diff between 4e4246a90ae8e101aded7cbd4d9080d8f8835f31 and eed615f8b3da73fe7832aba7ff9dbd0e8c054645

Changed Files

File Additions Deletions Status
gobex/gobex.c +9 -0 modified
gobex/gobex.h +2 -0 modified

Full Patch

diff --git a/gobex/gobex.c b/gobex/gobex.c
index 5546d82..d18b338 100644
--- a/gobex/gobex.c
+++ b/gobex/gobex.c
@@ -156,6 +156,13 @@ void g_obex_header_free(GObexHeader *header)
 	g_free(header);
 }
 
+gboolean g_obex_request_add_header(GObexRequest *req, GObexHeader *header)
+{
+	req->headers = g_slist_append(req->headers, header);
+
+	return TRUE;
+}
+
 GObexRequest *g_obex_request_new(uint8_t opcode)
 {
 	GObexRequest *req;
@@ -169,6 +176,8 @@ GObexRequest *g_obex_request_new(uint8_t opcode)
 
 void g_obex_request_free(GObexRequest *req)
 {
+	g_slist_foreach(req->headers, (GFunc) g_obex_header_free, NULL);
+	g_slist_free(req->headers);
 	g_free(req);
 }
 
diff --git a/gobex/gobex.h b/gobex/gobex.h
index ce2b6af..b49adfe 100644
--- a/gobex/gobex.h
+++ b/gobex/gobex.h
@@ -70,6 +70,8 @@ GObexHeader *g_obex_header_parse(const void *data, size_t len,
 						gboolean copy, size_t *parsed);
 void g_obex_header_free(GObexHeader *header);
 
+gboolean g_obex_request_add_header(GObexRequest *req, GObexHeader *header);
+
 GObexRequest *g_obex_request_new(uint8_t opcode);
 void g_obex_request_free(GObexRequest *req);