summaryrefslogtreecommitdiffstats
path: root/stream
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-05-23 22:26:10 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-05-23 22:26:10 +0000
commit8e84b9288cd6e9036e3c151da13a8c654a77a6cf (patch)
treefeb13f9ddc393d5b713f14aa440aff3efc08b050 /stream
parentbc2adc2e4816847bcf4ef33e1f1a1e6fdda115af (diff)
downloadmpv-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')
-rw-r--r--stream/cache2.c42
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;
}