diff options
author | Max Kellermann <max@duempel.org> | 2011-11-27 19:54:09 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2011-11-27 20:17:12 +0100 |
commit | f5f1bfbef1e4f777a5928da901d0ec4cb063b3f1 (patch) | |
tree | 7b36784ffa6b9515490f77e92d8aa520b5e2f7e0 /src/pcm_buffer.h | |
parent | cd108ba3aa9f4b0b8ebea3ce463c1e6e1e5a5abe (diff) | |
download | mpd-f5f1bfbef1e4f777a5928da901d0ec4cb063b3f1.tar.gz mpd-f5f1bfbef1e4f777a5928da901d0ec4cb063b3f1.tar.xz mpd-f5f1bfbef1e4f777a5928da901d0ec4cb063b3f1.zip |
pcm_buffer: un-inline pcm_buffer_get()
This method is too complex for inlining.
Diffstat (limited to 'src/pcm_buffer.h')
-rw-r--r-- | src/pcm_buffer.h | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/src/pcm_buffer.h b/src/pcm_buffer.h index 73959ea03..b1c597407 100644 --- a/src/pcm_buffer.h +++ b/src/pcm_buffer.h @@ -58,19 +58,8 @@ pcm_buffer_deinit(struct pcm_buffer *buffer) * Get the buffer, and guarantee a minimum size. This buffer becomes * invalid with the next pcm_buffer_get() call. */ -static inline void * -pcm_buffer_get(struct pcm_buffer *buffer, size_t size) -{ - if (buffer->size < size) { - /* free the old buffer */ - g_free(buffer->buffer); - - /* allocate a new buffer; align at 8 kB boundaries */ - buffer->size = ((size - 1) | 0x1fff) + 1; - buffer->buffer = g_malloc(buffer->size); - } - - return buffer->buffer; -} +G_GNUC_MALLOC +void * +pcm_buffer_get(struct pcm_buffer *buffer, size_t size); #endif |