On Fri, Dec 23, 2016 at 1:12 AM, Thomas Turner <thomas...@googlemail.com> wrote: > Signed-off-by: Thomas Turner <thomas...@googlemail.com> > --- > libavutil/tests/random_seed.c | 34 +++++++++++++++++++++------------- > tests/ref/fate/random_seed | 1 + > 2 files changed, 22 insertions(+), 13 deletions(-) > > diff --git a/libavutil/tests/random_seed.c b/libavutil/tests/random_seed.c > index ebe9b3e..fcd68bc 100644 > --- a/libavutil/tests/random_seed.c > +++ b/libavutil/tests/random_seed.c > @@ -23,24 +23,32 @@ > > #undef printf > #define N 256 > +#define F 2 > #include <stdio.h> > > +typedef uint32_t (*random_seed_ptr_t)(void); > + > int main(void) > { > - int i, j, retry; > + int i, j, rsf, retry; > uint32_t seeds[N]; > + random_seed_ptr_t random_seed[F] = {av_get_random_seed, > get_generic_seed}; > > - for (retry=0; retry<3; retry++){ > - for (i=0; i<N; i++){ > - seeds[i] = av_get_random_seed(); > - for (j=0; j<i; j++) > - if (seeds[j] == seeds[i]) > - goto retry; > + for (rsf=0; rsf<F; ++rsf){ > + for (retry=0; retry<3; retry++){ > + for (i=0; i<N; i++){ > + seeds[i] = random_seed[rsf](); > + for (j=0; j<i; j++) > + if (seeds[j] == seeds[i]) > + goto retry; > + } > + printf("seeds OK\n"); > + goto next; > + retry:; > } > - printf("seeds OK\n"); > - return 0; > - retry:; > + printf("rsf %d: FAIL at %d with %X\n", rsf, j, seeds[j]); > + return 1; > + next:; > } > - printf("FAIL at %d with %X\n", j, seeds[j]); > - return 1; > -} > + return 0; > + } > \ No newline at end of file > diff --git a/tests/ref/fate/random_seed b/tests/ref/fate/random_seed > index 2b5b3af..ef0eef2 100644 > --- a/tests/ref/fate/random_seed > +++ b/tests/ref/fate/random_seed > @@ -1 +1,2 @@ > seeds OK > +seeds OK > -- > 1.9.1
The new test sporadically fails on msvc x86_64 for some reason. What does it actually mean when it fails, ie. what does this thing test? - Hendrik _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel