media: avoid doing _get_state() for state changes
authorWim Taymans <wim.taymans@collabora.co.uk>
Fri, 5 Mar 2010 16:51:26 +0000 (17:51 +0100)
committerWim Taymans <wim.taymans@collabora.co.uk>
Fri, 5 Mar 2010 16:54:09 +0000 (17:54 +0100)
commitc7ca9b74eb18f1a27dfcd1b5f7bf1b174de89acb
tree184f7bc732a5394629c0370d18132244a293ed8d
parentd45eae2eddf71daba5f5377daf481bde052b2b45
media: avoid doing _get_state() for state changes

When preparing, use the ASYNC_DONE and ERROR messages in the bus handler to wait
until the media is prerolled or in error. This avoids doing a blocking call of
gst_element_get_state() that can cause lockups when there is an error.

Fixes #611899
gst/rtsp-server/rtsp-media.c
gst/rtsp-server/rtsp-media.h
gst/rtsp-server/rtsp-session.c