From 5c4c611e59d05cc9d813a99a3d4079e449b2ac65 Mon Sep 17 00:00:00 2001 From: Adam Sutton Date: Sat, 9 Feb 2013 23:22:11 +0000 Subject: [PATCH] timeshift: minor addition to atomics (check max size correctly). --- src/atomic.h | 12 ++++++++++++ src/timeshift/timeshift_filemgr.c | 2 +- src/timeshift/timeshift_reader.c | 1 - 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/atomic.h b/src/atomic.h index 8627e64a4..f4b8c9916 100644 --- a/src/atomic.h +++ b/src/atomic.h @@ -35,3 +35,15 @@ atomic_add_u64(volatile uint64_t *ptr, uint64_t incr) { return __sync_fetch_and_add(ptr, incr); } + +static inline uint64_t +atomic_pre_add_u64(volatile uint64_t *ptr, uint64_t incr) +{ + return __sync_add_and_fetch(ptr, incr); +} + +static inline uint64_t +atomic_pre_add_u64(volatile uint64_t *ptr, uint64_t incr) +{ + return __sync_add_and_fetch(ptr, incr); +} diff --git a/src/timeshift/timeshift_filemgr.c b/src/timeshift/timeshift_filemgr.c index 185d80a5f..a0d1603a3 100644 --- a/src/timeshift/timeshift_filemgr.c +++ b/src/timeshift/timeshift_filemgr.c @@ -226,7 +226,7 @@ timeshift_file_t *timeshift_filemgr_get ( timeshift_t *ts, int create ) /* Check size */ if (!timeshift_unlimited_size && - atomic_add_u64(×hift_total_size, 0) >= timeshift_max_size) { + atomic_pre_add_u64(×hift_total_size, 0) >= timeshift_max_size) { tvhlog(LOG_DEBUG, "timshift", "ts %d buffer full", ts->id); ts->full = 1; } diff --git a/src/timeshift/timeshift_reader.c b/src/timeshift/timeshift_reader.c index 2e5d1d2f6..70bd9d0ad 100644 --- a/src/timeshift/timeshift_reader.c +++ b/src/timeshift/timeshift_reader.c @@ -356,7 +356,6 @@ static int _timeshift_read } else { streaming_message_t *ssm = _timeshift_find_sstart(*cur_file, (*sm)->sm_time); if (ssm && ssm->sm_data != ts->smt_start) { - printf("SENDING NEW SMT_START MESSAGE\n"); streaming_target_deliver2(ts->output, streaming_msg_clone(ssm)); if (ts->smt_start) streaming_start_unref(ts->smt_start); -- 2.47.2