diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-05-23 22:26:10 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-05-23 22:26:10 +0000 |
commit | 8e84b9288cd6e9036e3c151da13a8c654a77a6cf (patch) | |
tree | feb13f9ddc393d5b713f14aa440aff3efc08b050 /stream/cache2.c | |
parent | bc2adc2e4816847bcf4ef33e1f1a1e6fdda115af (diff) | |
download | mpv-8e84b9288cd6e9036e3c151da13a8c654a77a6cf.tar.bz2 mpv-8e84b9288cd6e9036e3c151da13a8c654a77a6cf.tar.xz |
Slightly reduce number of #ifs
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31204 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'stream/cache2.c')
-rw-r--r-- | stream/cache2.c | 42 |
1 files changed, 20 insertions, 22 deletions
diff --git a/stream/cache2.c b/stream/cache2.c index 9572bda827..51989ebd2a 100644 --- a/stream/cache2.c +++ b/stream/cache2.c @@ -279,13 +279,25 @@ static int cache_execute_control(cache_vars_t *s) { return 1; } -static cache_vars_t* cache_init(int size,int sector){ - int num; +static void *shared_alloc(int size) { #if FORKED_CACHE - cache_vars_t* s=shmem_alloc(sizeof(cache_vars_t)); + return shmem_alloc(size); #else - cache_vars_t* s=malloc(sizeof(cache_vars_t)); + return malloc(size); #endif +} + +static void shared_free(void *ptr, int size) { +#if FORKED_CACHE + shmem_free(ptr, size); +#else + free(ptr); +#endif +} + +static cache_vars_t* cache_init(int size,int sector){ + int num; + cache_vars_t* s=shared_alloc(sizeof(cache_vars_t)); if(s==NULL) return NULL; memset(s,0,sizeof(cache_vars_t)); @@ -295,18 +307,10 @@ static cache_vars_t* cache_init(int size,int sector){ }//32kb min_size s->buffer_size=num*sector; s->sector_size=sector; -#if FORKED_CACHE - s->buffer=shmem_alloc(s->buffer_size); -#else - s->buffer=malloc(s->buffer_size); -#endif + s->buffer=shared_alloc(s->buffer_size); if(s->buffer == NULL){ -#if FORKED_CACHE - shmem_free(s,sizeof(cache_vars_t)); -#else - free(s); -#endif + shared_free(s, sizeof(cache_vars_t)); return NULL; } @@ -327,16 +331,10 @@ void cache_uninit(stream_t *s) { s->cache_pid = 0; } if(!c) return; -#if !FORKED_CACHE - free(c->buffer); + shared_free(c->buffer, c->buffer_size); c->buffer = NULL; c->stream = NULL; - free(s->cache_data); -#else - shmem_free(c->buffer,c->buffer_size); - c->buffer = NULL; - shmem_free(s->cache_data,sizeof(cache_vars_t)); -#endif + shared_free(s->cache_data, sizeof(cache_vars_t)); s->cache_data = NULL; } |