# HG changeset patch # User Jamie Bullock # Date 1401996666 -3600 # Node ID d2453f55c47075baa37857ecb32367b277f91918 # Parent 66ebf1399a29c87292af1fd4b60f09cd359c6d71 Fix bug in xtract_last_n() diff -r 66ebf1399a29 -r d2453f55c470 src/stateful.c --- a/src/stateful.c Thu Jun 05 20:30:08 2014 +0100 +++ b/src/stateful.c Thu Jun 05 20:31:06 2014 +0100 @@ -50,7 +50,7 @@ last_n_state->ringbuf = ringbuf_new(N * sizeof(double)); - if (last_n_state->ringbuf) + if (last_n_state->ringbuf == NULL) { perror("could not allocate memory for xtract_last_n_state->ringbuf"); } @@ -66,7 +66,6 @@ int xtract_last_n(const xtract_last_n_state *state, const double *data, const int N, const void *argv, double *result) { - double *current = (double *)argv; size_t N_bytes = N * sizeof(double); if (N_bytes != ringbuf_capacity(state->ringbuf)) @@ -75,7 +74,7 @@ return XTRACT_BAD_STATE; } - ringbuf_memcpy_into(state->ringbuf, current, sizeof(double)); + ringbuf_memcpy_into(state->ringbuf, data, sizeof(double)); size_t used = ringbuf_bytes_used(state->ringbuf); ringbuf_memcpy_from(result, state->ringbuf, used, false);