diff options
author | Edgard Lima <edgard.lima@indt.org.br> | 2007-02-22 17:53:26 +0000 |
---|---|---|
committer | Edgard Lima <edgard.lima@indt.org.br> | 2007-02-22 17:53:26 +0000 |
commit | fff672f930932ae0466d97011b2258df00f4ce55 (patch) | |
tree | 9a2d0237b2d7607889c0fb856aac43dd808d4026 /sys/v4l2/gstv4l2object.c | |
parent | 5c1b116dc898990c72acdaf54ce244cfc73fa7af (diff) |
Fix segfault when oppening a radio device.
Original commit message from CVS:
Fix segfault when oppening a radio device.
Diffstat (limited to 'sys/v4l2/gstv4l2object.c')
-rw-r--r-- | sys/v4l2/gstv4l2object.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/v4l2/gstv4l2object.c b/sys/v4l2/gstv4l2object.c index 7f8df175..48497fc7 100644 --- a/sys/v4l2/gstv4l2object.c +++ b/sys/v4l2/gstv4l2object.c @@ -431,12 +431,15 @@ gst_v4l2_set_defaults (GstV4l2Object * v4l2object) channel = GST_TUNER_CHANNEL (gst_tuner_get_channel (GST_TUNER (v4l2object-> element))); - g_free (v4l2object->channel); - v4l2object->channel = g_strdup (channel->label); - gst_tuner_channel_changed (tuner, channel); + if (channel) { + g_free (v4l2object->channel); + v4l2object->channel = g_strdup (channel->label); + gst_tuner_channel_changed (tuner, channel); + } } - if (GST_TUNER_CHANNEL_HAS_FLAG (channel, GST_TUNER_CHANNEL_FREQUENCY)) { + if (channel + && GST_TUNER_CHANNEL_HAS_FLAG (channel, GST_TUNER_CHANNEL_FREQUENCY)) { if (v4l2object->frequency != 0) { gst_tuner_set_frequency (tuner, channel, v4l2object->frequency); } else { |