Revert "fix crash when using soxr_process after calling soxr_clear"
This reverts commit 4527588bea
.
master
parent
393b1b71a5
commit
559dd4739b
|
@ -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";}
|
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;}
|
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_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_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_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);}
|
soxr_t src_new(unsigned id, int channels, SRC_ERROR * error) {return src_callback_new(0, id, channels, error, 0);}
|
||||||
|
|
11
src/soxr.c
11
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) {
|
if (p) {
|
||||||
struct soxr tmp = *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));
|
memcpy(p->control_block, tmp.control_block, sizeof(p->control_block));
|
||||||
p->deinterleave = tmp.deinterleave;
|
p->deinterleave = tmp.deinterleave;
|
||||||
p->interleave = tmp.interleave;
|
p->interleave = tmp.interleave;
|
||||||
return set_ratio? soxr_set_io_ratio(p, tmp.io_ratio, 0) : 0;
|
return 0;
|
||||||
}
|
}
|
||||||
return "invalid soxr_t pointer";
|
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)
|
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);
|
sample_t * dest = resampler_input(p->resamplers[i], NULL, len);
|
||||||
|
|
|
@ -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
|
#undef SOXR
|
||||||
|
|
||||||
#if defined __cplusplus
|
#if defined __cplusplus
|
||||||
|
|
Loading…
Reference in New Issue