From ae2d41ec875965ce4ab9fdd88a5e8ba57cada67a Mon Sep 17 00:00:00 2001 From: Vittorio Giovara Date: Tue, 16 Dec 2014 10:33:36 +0100 Subject: elbg: check memory allocations and propagate errors --- libavcodec/elbg.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'libavcodec/elbg.h') diff --git a/libavcodec/elbg.h b/libavcodec/elbg.h index b8ea489b24..3b1587a3ab 100644 --- a/libavcodec/elbg.h +++ b/libavcodec/elbg.h @@ -36,10 +36,11 @@ * @param num_steps The maximum number of steps. One step is already a good compromise between time and quality. * @param closest_cb Return the closest codebook to each point. Must be allocated. * @param rand_state A random number generator state. Should be already initialized by av_lfg_init(). + * @return < 0 in case of error, 0 otherwise */ -void ff_do_elbg(int *points, int dim, int numpoints, int *codebook, - int numCB, int num_steps, int *closest_cb, - AVLFG *rand_state); +int ff_do_elbg(int *points, int dim, int numpoints, int *codebook, + int numCB, int num_steps, int *closest_cb, + AVLFG *rand_state); /** * Initialize the **codebook vector for the elbg algorithm. If you have already @@ -47,9 +48,10 @@ void ff_do_elbg(int *points, int dim, int numpoints, int *codebook, * If numpoints < 8*numCB this function fills **codebook with random numbers. * If not, it calls ff_do_elbg for a (smaller) random sample of the points in * **points. Get the same parameters as ff_do_elbg. + * @return < 0 in case of error, 0 otherwise */ -void ff_init_elbg(int *points, int dim, int numpoints, int *codebook, - int numCB, int num_steps, int *closest_cb, - AVLFG *rand_state); +int ff_init_elbg(int *points, int dim, int numpoints, int *codebook, + int numCB, int num_steps, int *closest_cb, + AVLFG *rand_state); #endif /* AVCODEC_ELBG_H */ -- cgit v1.2.3