]> code.delx.au - pulseaudio/blobdiff - polyp/packet.c
introduce pa_xmalloc() and friends
[pulseaudio] / polyp / packet.c
index e94df057c4b06f3c8cfc1c76ad82b58098a698b7..955feeb12019e293a2d0c7017f0fdbc443a9dd95 100644 (file)
 #include <stdlib.h>
 
 #include "packet.h"
+#include "xmalloc.h"
 
 struct pa_packet* pa_packet_new(size_t length) {
     struct pa_packet *p;
     assert(length);
-    p = malloc(sizeof(struct pa_packet)+length);
-    assert(p);
-
+    p = pa_xmalloc(sizeof(struct pa_packet)+length);
     p->ref = 1;
     p->length = length;
     p->data = (uint8_t*) (p+1);
@@ -44,9 +43,7 @@ struct pa_packet* pa_packet_new(size_t length) {
 struct pa_packet* pa_packet_new_dynamic(uint8_t* data, size_t length) {
     struct pa_packet *p;
     assert(data && length);
-    p = malloc(sizeof(struct pa_packet));
-    assert(p);
-
+    p = pa_xmalloc(sizeof(struct pa_packet));
     p->ref = 1;
     p->length = length;
     p->data = data;
@@ -66,7 +63,7 @@ void pa_packet_unref(struct pa_packet *p) {
 
     if (p->ref == 0) {
         if (p->type == PA_PACKET_DYNAMIC)
-            free(p->data);
-        free(p);
+            pa_xfree(p->data);
+        pa_xfree(p);
     }
 }