1 From 2262ba4b686d5cc0d3e894707fe1d31619a3a8f1 Mon Sep 17 00:00:00 2001
2 From: Andre McCurdy <armccurdy@gmail.com>
3 Date: Tue, 9 Feb 2016 14:00:00 -0800
4 Subject: [PATCH] ensure valid sentinals for gst_structure_get() etc
6 For GStreamer functions declared with G_GNUC_NULL_TERMINATED,
7 ie __attribute__((__sentinel__)), gcc will generate a warning if the
8 last parameter passed to the function is not NULL (where a valid NULL
9 in this context is defined as zero with any pointer type).
11 The C callers to such functions within gst-plugins-bad use the C NULL
12 definition (ie ((void*)0)), which is a valid sentinel.
14 However the C++ NULL definition (ie 0L), is not a valid sentinel
15 without an explicit cast to a pointer type.
17 Upstream-Status: Pending
19 Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
21 sys/decklink/gstdecklink.cpp | 10 +++++-----
22 sys/decklink/gstdecklinkaudiosrc.cpp | 2 +-
23 sys/decklink/gstdecklinkvideosink.cpp | 2 +-
24 3 files changed, 7 insertions(+), 7 deletions(-)
26 diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp
27 index 64637f1..bac956f 100644
28 --- a/sys/decklink/gstdecklink.cpp
29 +++ b/sys/decklink/gstdecklink.cpp
30 @@ -324,22 +324,22 @@ gst_decklink_mode_get_structure (GstDecklinkModeEnum e, BMDPixelFormat f)
31 "height", G_TYPE_INT, mode->height,
32 "pixel-aspect-ratio", GST_TYPE_FRACTION, mode->par_n, mode->par_d,
33 "interlace-mode", G_TYPE_STRING, mode->interlaced ? "interleaved" : "progressive",
34 - "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, NULL);
35 + "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, (void *) NULL);
38 case bmdFormat8BitYUV: /* '2vuy' */
39 gst_structure_set (s, "format", G_TYPE_STRING, "UYVY",
40 "colorimetry", G_TYPE_STRING, mode->colorimetry,
41 - "chroma-site", G_TYPE_STRING, "mpeg2", NULL);
42 + "chroma-site", G_TYPE_STRING, "mpeg2", (void *) NULL);
44 case bmdFormat10BitYUV: /* 'v210' */
45 - gst_structure_set (s, "format", G_TYPE_STRING, "v210", NULL);
46 + gst_structure_set (s, "format", G_TYPE_STRING, "v210", (void *) NULL);
48 case bmdFormat8BitARGB: /* 'ARGB' */
49 - gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", NULL);
50 + gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", (void *) NULL);
52 case bmdFormat8BitBGRA: /* 'BGRA' */
53 - gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", NULL);
54 + gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", (void *) NULL);
56 case bmdFormat10BitRGB: /* 'r210' Big-endian RGB 10-bit per component with SMPTE video levels (64-960). Packed as 2:10:10:10 */
57 case bmdFormat12BitRGB: /* 'R12B' Big-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component */
58 diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp
59 index 9a701ee..26fb7ec 100644
60 --- a/sys/decklink/gstdecklinkaudiosrc.cpp
61 +++ b/sys/decklink/gstdecklinkaudiosrc.cpp
62 @@ -312,7 +312,7 @@ gst_decklink_audio_src_set_caps (GstBaseSrc * bsrc, GstCaps * caps)
63 g_mutex_unlock (&self->input->lock);
66 - g_object_get (videosrc, "connection", &vconn, NULL);
67 + g_object_get (videosrc, "connection", &vconn, (void *) NULL);
68 gst_object_unref (videosrc);
71 diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp
72 index eebeff3..da6e486 100644
73 --- a/sys/decklink/gstdecklinkvideosink.cpp
74 +++ b/sys/decklink/gstdecklinkvideosink.cpp
75 @@ -158,7 +158,7 @@ reset_framerate (GstCapsFeatures * features, GstStructure * structure,
78 gst_structure_set (structure, "framerate", GST_TYPE_FRACTION_RANGE, 0, 1,
80 + G_MAXINT, 1, (void *) NULL);