From eb0a78584105ed1c94ede667cb8581ac02123708 Mon Sep 17 00:00:00 2001 From: "Reynaldo H. Verdejo Pinochet" Date: Fri, 17 Jun 2016 15:32:08 -0700 Subject: [PATCH] dvbsrc: do not rely on temp var for fail detection Use errno instead as local var might be overwritten before the check. --- sys/dvb/gstdvbsrc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c index adc2cf95e..20ce5cebf 100644 --- a/sys/dvb/gstdvbsrc.c +++ b/sys/dvb/gstdvbsrc.c @@ -2183,6 +2183,7 @@ gst_dvbsrc_output_frontend_stats (GstDvbSrc * src) return; } + errno = 0; LOOP_WHILE_EINTR (err, ioctl (fe_fd, FE_READ_SIGNAL_STRENGTH, &signal)); if (!err) gst_structure_set (structure, "signal", G_TYPE_INT, signal, NULL); @@ -2199,7 +2200,7 @@ gst_dvbsrc_output_frontend_stats (GstDvbSrc * src) if (!err) gst_structure_set (structure, "unc", G_TYPE_INT, bad_blks, NULL); - if (err) + if (errno) GST_WARNING_OBJECT (src, "There were errors getting frontend status information: '%s'", g_strerror (errno)); -- 2.34.1