mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-12-18 08:56:40 -05:00
introduce pa_xmalloc() and friends
implement module auto loading git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@103 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
parent
24291aff27
commit
46091a9237
61 changed files with 700 additions and 631 deletions
|
|
@ -27,13 +27,12 @@
|
|||
#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);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue