diff options
-rw-r--r-- | ChangeLog | 5 | ||||
m--------- | common | 0 | ||||
-rw-r--r-- | ext/raw1394/gstdv1394src.c | 10 |
3 files changed, 15 insertions, 0 deletions
@@ -1,3 +1,8 @@ +2007-03-07 Jan Schmidt <thaytan@mad.scientist.com> + + * ext/raw1394/gstdv1394src.c: (gst_dv1394src_start): + Free handles that we allocated when exiting via the error paths. + 2007-03-07 Stefan Kost <ensonic@users.sf.net> * gst/level/gstlevel.c: (gst_level_class_init), diff --git a/common b/common -Subproject c4f56a657d79aee0e3fc25ef2bcf876f9f3c159 +Subproject 7c5a0ab68de1fed4e5a1fd473160debc2c4c7b8 diff --git a/ext/raw1394/gstdv1394src.c b/ext/raw1394/gstdv1394src.c index 5b0d9099..d10c389c 100644 --- a/ext/raw1394/gstdv1394src.c +++ b/ext/raw1394/gstdv1394src.c @@ -842,6 +842,8 @@ no_handle: } no_ports: { + raw1394_destroy_handle (src->handle); + src->handle = NULL; GST_ELEMENT_ERROR (src, RESOURCE, NOT_FOUND, (NULL), ("no ports available for raw1394")); return FALSE; @@ -854,6 +856,12 @@ cannot_set_port: } cannot_start: { + raw1394_destroy_handle (src->handle); + src->handle = NULL; +#ifdef HAVE_LIBIEC61883 + iec61883_dv_fb_close (src->iec61883dv); + src->iec61883dv = NULL; +#endif GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL), ("can't start 1394 iso receive")); return FALSE; @@ -861,6 +869,8 @@ cannot_start: #ifdef HAVE_LIBIEC61883 cannot_initialise_dv: { + raw1394_destroy_handle (src->handle); + src->handle = NULL; GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL), ("can't initialise iec61883 dv")); return FALSE; |