Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/alexmarsev/soxr.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Sykes <robs@users.sourceforge.net>2015-08-27 21:16:48 +0300
committerRob Sykes <robs@users.sourceforge.net>2015-08-27 21:16:48 +0300
commit559dd4739bc4f001afed32b35b9db9776a503031 (patch)
treef0b60582b1867b85743e7e83d3093fe8a3cd15b9
parent393b1b71a545c9acc58950983bb17966feaa2724 (diff)
Revert "fix crash when using soxr_process after calling soxr_clear"
This reverts commit 4527588beae35c0aefd10df1f9936cb81f9851cc.
-rw-r--r--src/lsr.c2
-rw-r--r--src/soxr.c11
-rw-r--r--src/soxr.h6
3 files changed, 3 insertions, 16 deletions
diff --git a/src/lsr.c b/src/lsr.c
index 8bcc11b..64b5798 100644
--- a/src/lsr.c
+++ b/src/lsr.c
@@ -108,7 +108,7 @@ char const * src_get_version(void) {return soxr_version();}
char const * src_strerror(soxr_error_t error) {return error == (soxr_error_t)1? "Placeholder." : sizeof(int) >= sizeof(char *) || !error ? soxr_strerror(error) : "soxr error";}
int src_is_valid_ratio(double oi_ratio) {return getenv("SOXR_LSR_STRICT")? oi_ratio >= 1./256 && oi_ratio <= 256 : oi_ratio > 0;}
soxr_error_t src_error(soxr_t p) {return soxr_error(p);}
-soxr_error_t src_reset(soxr_t p) {return soxr_clear0(p, 0);}
+soxr_error_t src_reset(soxr_t p) {return soxr_clear(p);}
soxr_t src_delete(soxr_t p) {soxr_delete(p); return 0;}
soxr_error_t src_set_ratio(soxr_t p, double oi_ratio) {return soxr_set_io_ratio(p, 1/oi_ratio, 0);}
soxr_t src_new(unsigned id, int channels, SRC_ERROR * error) {return src_callback_new(0, id, channels, error, 0);}
diff --git a/src/soxr.c b/src/soxr.c
index 8246655..36b0251 100644
--- a/src/soxr.c
+++ b/src/soxr.c
@@ -391,7 +391,7 @@ void soxr_delete(soxr_t p)
-soxr_error_t soxr_clear0(soxr_t p, int set_ratio) /* TODO: this, properly. */
+soxr_error_t soxr_clear(soxr_t p) /* TODO: this, properly. */
{
if (p) {
struct soxr tmp = *p;
@@ -406,20 +406,13 @@ soxr_error_t soxr_clear0(soxr_t p, int set_ratio) /* TODO: this, properly. */
memcpy(p->control_block, tmp.control_block, sizeof(p->control_block));
p->deinterleave = tmp.deinterleave;
p->interleave = tmp.interleave;
- return set_ratio? soxr_set_io_ratio(p, tmp.io_ratio, 0) : 0;
+ return 0;
}
return "invalid soxr_t pointer";
}
-soxr_error_t soxr_clear(soxr_t p)
-{
- return soxr_clear0(p, 1);
-}
-
-
-
static void soxr_input_1ch(soxr_t p, unsigned i, soxr_cbuf_t src, size_t len)
{
sample_t * dest = resampler_input(p->resamplers[i], NULL, len);
diff --git a/src/soxr.h b/src/soxr.h
index 7705c44..caeedd1 100644
--- a/src/soxr.h
+++ b/src/soxr.h
@@ -337,12 +337,6 @@ SOXR soxr_error_t soxr_set_num_channels(soxr_t, unsigned);
-/* --------------------------- Internal use only ---------------------------- */
-
-SOXR soxr_error_t soxr_clear0(soxr_t, int);
-
-
-
#undef SOXR
#if defined __cplusplus