basefilter: fix init race condition
authorFelipe Contreras <felipe.contreras@nokia.com>
Mon, 16 Mar 2009 18:51:14 +0000 (20:51 +0200)
committerFelipe Contreras <felipe.contreras@gmail.com>
Tue, 24 Mar 2009 20:07:26 +0000 (22:07 +0200)
commiteaa72fed321156c5c88e3b1a6d5b2371525a2ed1
tree028171a530044ded46e13d3681f4d40d5e721edc
parente3e4589528869ce3f2c5a9e81cc37bdd9c9d694f
basefilter: fix init race condition

This fixes an issue when changing the state to READY too fast. The
problem comes when there's a state change from PAUSED to READY while
pad_chain is in the middle of initializing OpenMAX; the two threads
compete to initialize and de-initialize OpenMAX at the same time.

This is a simplified version of a patch developed by Mark Nauwelaerts.

Ideally the initialization should move out of pad_chain to avoid these
issues.

Signed-off-by: Felipe Contreras <felipe.contreras@nokia.com>
omx/gstomx_base_filter.c
omx/gstomx_base_filter.h