diff options
author | Marijn Suijten <marijns95@gmail.com> | 2021-01-12 10:36:34 +0100 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2021-01-28 17:56:03 +0000 |
commit | 7b1fc3eac637a54d59b17f9bc052224031e0a081 (patch) | |
tree | 0b59eb56ce2956545d2433a033e883e10a555070 | |
parent | 6dcdfee6e83204ae88d0d037970758827b27aada (diff) | |
download | gstreamer-plugins-base-7b1fc3eac637a54d59b17f9bc052224031e0a081.tar.gz |
video: Convert info_to_caps to take self as const ptr
This requires a slight modification to the function itself because it
was overwriting a member locally.
However, now this side-effect cannot be observed outside the function
anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1024>
-rw-r--r-- | gst-libs/gst/video/video-info.c | 12 | ||||
-rw-r--r-- | gst-libs/gst/video/video-info.h | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/gst-libs/gst/video/video-info.c b/gst-libs/gst/video/video-info.c index b937e9fde..1e8bce310 100644 --- a/gst-libs/gst/video/video-info.c +++ b/gst-libs/gst/video/video-info.c @@ -641,7 +641,7 @@ gst_video_info_is_equal (const GstVideoInfo * info, const GstVideoInfo * other) * Returns: a new #GstCaps containing the info of @info. */ GstCaps * -gst_video_info_to_caps (GstVideoInfo * info) +gst_video_info_to_caps (const GstVideoInfo * info) { GstCaps *caps; const gchar *format; @@ -686,14 +686,14 @@ gst_video_info_to_caps (GstVideoInfo * info) if (GST_VIDEO_INFO_MULTIVIEW_MODE (info) != GST_VIDEO_MULTIVIEW_MODE_NONE) { const gchar *caps_str = NULL; + GstVideoMultiviewFlags multiview_flags = + GST_VIDEO_INFO_MULTIVIEW_FLAGS (info); /* If the half-aspect flag is set, applying it into the PAR of the * resulting caps now seems safe, and helps with automatic behaviour * in elements that aren't explicitly multiview aware */ - if (GST_VIDEO_INFO_MULTIVIEW_FLAGS (info) & - GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT) { - GST_VIDEO_INFO_MULTIVIEW_FLAGS (info) &= - ~GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT; + if (multiview_flags & GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT) { + multiview_flags &= ~GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT; switch (GST_VIDEO_INFO_MULTIVIEW_MODE (info)) { case GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE: case GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX: @@ -716,7 +716,7 @@ gst_video_info_to_caps (GstVideoInfo * info) if (caps_str != NULL) { gst_caps_set_simple (caps, "multiview-mode", G_TYPE_STRING, caps_str, "multiview-flags", GST_TYPE_VIDEO_MULTIVIEW_FLAGSET, - GST_VIDEO_INFO_MULTIVIEW_FLAGS (info), GST_FLAG_SET_MASK_EXACT, NULL); + multiview_flags, GST_FLAG_SET_MASK_EXACT, NULL); } } diff --git a/gst-libs/gst/video/video-info.h b/gst-libs/gst/video/video-info.h index 435db812e..6ec3b9269 100644 --- a/gst-libs/gst/video/video-info.h +++ b/gst-libs/gst/video/video-info.h @@ -452,7 +452,7 @@ GST_VIDEO_API gboolean gst_video_info_from_caps (GstVideoInfo *info, const GstCaps * caps); GST_VIDEO_API -GstCaps * gst_video_info_to_caps (GstVideoInfo *info); +GstCaps * gst_video_info_to_caps (const GstVideoInfo *info); GST_VIDEO_API gboolean gst_video_info_convert (GstVideoInfo *info, |