Destroy state when going to READY

Original commit message from CVS:
Destroy state when going to READY
This commit is contained in:
Wim Taymans 2002-09-12 20:57:09 +00:00
parent d368d1ad76
commit 876f5f22a9
3 changed files with 15 additions and 8 deletions

View file

@ -541,6 +541,13 @@ gst_colorspace_change_state (GstElement *element)
case GST_STATE_PLAYING_TO_PAUSED:
space->pool = NULL;
break;
case GST_STATE_PAUSED_TO_READY:
gst_colorspace_converter_destroy (space->converter);
space->converter = NULL;
space->disabled = TRUE;
space->type = GST_COLORSPACE_NONE;
space->sinkcaps = NULL;
break;
}
parent_class->change_state (element);
@ -612,10 +619,3 @@ GstPluginDesc plugin_desc = {
plugin_init
};

View file

@ -201,6 +201,13 @@ gst_colorspace_yuv2rgb_get_converter (GstCaps *from, GstCaps *to)
return new;
}
void
gst_colorspace_converter_destroy (GstColorSpaceConverter *conv)
{
if (conv)
g_free (conv);
}
static void gst_colorspace_I420_to_rgb32(GstColorSpaceConverter *space, unsigned char *src, unsigned char *dest)
{
int size;

View file

@ -62,7 +62,7 @@ struct _GstColorSpaceConverter {
GstColorSpaceConverter* gst_colorspace_yuv2rgb_get_converter (GstCaps *from, GstCaps *to);
#define gst_colorspace_convert(converter, src, dest) \
(converter)->convert((converter), (src), (dest))
void gst_colorspace_destroy (GstColorSpaceConverter *space);
void gst_colorspace_converter_destroy (GstColorSpaceConverter *space);
#endif