openSUSE Commits
Threads by month
- ----- 2024 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
October 2022
- 1 participants
- 2854 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gstreamer-plugins-base for openSUSE:Factory checked in at 2022-10-25 11:18:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-base (Old)
and /work/SRC/openSUSE:Factory/.gstreamer-plugins-base.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-plugins-base"
Tue Oct 25 11:18:37 2022 rev:87 rq:1030674 version:1.20.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/gstreamer-plugins-base/gstreamer-plugins-base.changes 2022-06-24 08:44:49.463106503 +0200
+++ /work/SRC/openSUSE:Factory/.gstreamer-plugins-base.new.2275/gstreamer-plugins-base.changes 2022-10-25 11:18:46.025971702 +0200
@@ -1,0 +2,43 @@
+Fri Oct 21 21:22:08 UTC 2022 - Bj��rn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 1.20.4:
+ + decodebin3:
+ - Fix mutex leaks
+ - Fix memory issues with active selection list
+ - uridecodebin3, urisourcebin: Event handling fixes
+ - Fix EOS event sequence
+ + parsebin:
+ - Avoid crash with unknown streams
+ - SIGSEGV during HLS stream using souphttpsrc
+ + glimagesink:
+ - Only allow setting the GL display/context if it is a valid
+ value
+ - Segfault on android devices
+ + gstgl: Fix several memory leaks in macOS
+ + opusenc: improve inband-fec property documentation
+ + playsink: Hold a reference to the soft volume element
+ + pbutils: descriptions: fix
+ gst_pb_utils_get_caps_description_flags()
+ + rtspurl: Use gst_uri_join_strings() in
+ gst_rtsp_url_get_request_uri_with_control() instead of a
+ hand-crafted, wrong version
+ + rtspconnection: protect cancellable by a mutex
+ + sdpmessage: Don't set SDP medias from caps without
+ media/payload/clock-rate fields
+ + samiparse: fix handling of self-closing tags
+ + ssaparse: include required system headers for isspace() and
+ sscanf() functions
+ + subparse: fix crash when parsing invalid timestamps in mpl2
+ + subparse fixes
+ + textoverlay: Don't miscalculate text running times
+ + videoaggregator: always convert when user provides
+ converter-config
+ + video: Fix scaling in 4x horizontal co-sited chroma (Y41B,
+ YUV9, YVU9 and IYU9)
+ + xmptag: register musicbrainz tags during init to fix critical
+ in jpegparse
+ + xvimagesink: fix image leaks in error code path
+ + tests: skip unit tests for dependency-less elements that have
+ been disabled
+
+-------------------------------------------------------------------
Old:
----
gst-plugins-base-1.20.3.tar.xz
New:
----
gst-plugins-base-1.20.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer-plugins-base.spec ++++++
--- /var/tmp/diff_new_pack.mFZFES/_old 2022-10-25 11:18:47.025973919 +0200
+++ /var/tmp/diff_new_pack.mFZFES/_new 2022-10-25 11:18:47.025973919 +0200
@@ -20,7 +20,7 @@
%define gst_branch 1.0
%define gstreamer_req_version %(echo %{version} | sed -e "s/+.*//")
Name: gstreamer-plugins-base
-Version: 1.20.3
+Version: 1.20.4
Release: 0
Summary: GStreamer Streaming-Media Framework Plug-Ins
License: GPL-2.0-or-later AND LGPL-2.1-or-later
++++++ gst-plugins-base-1.20.3.tar.xz -> gst-plugins-base-1.20.4.tar.xz ++++++
++++ 2662 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gstreamer-plugins-good for openSUSE:Factory checked in at 2022-10-25 11:18:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-good (Old)
and /work/SRC/openSUSE:Factory/.gstreamer-plugins-good.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-plugins-good"
Tue Oct 25 11:18:36 2022 rev:85 rq:1030673 version:1.20.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/gstreamer-plugins-good/gstreamer-plugins-good.changes 2022-06-24 08:44:58.279116378 +0200
+++ /work/SRC/openSUSE:Factory/.gstreamer-plugins-good.new.2275/gstreamer-plugins-good.changes 2022-10-25 11:18:43.361965798 +0200
@@ -1,0 +2,44 @@
+Fri Oct 21 21:29:49 UTC 2022 - Bj��rn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 1.20.4:
+ + alpha: fix stride issue when out buffer has padding on right
+ + isoff: Fix earliest pts field parse issue
+ + matroska-mux: allow width + height changes for
+ avc3|hev1|vp8|vp9
+ + qt: Fix another instance of Qt/GStreamer both defining GLsync differently
+ + qtdemux:
+ - Avoid crash on reconfiguring.
+ - Guard against timestamp calculation overflow in gap event loop
+ - Don't use invalid values from failed trex parsing
+ - Possible endless loop
+ + rtpjitterbuffer:
+ - Only unschedule timers for late packets if they're not RTX
+ packets and only once
+ - Remove lost timer for out of order packets
+ + rtspsrc:
+ - SETUP generates 400 Bad Request
+ - Retry SETUP with non-compliant URL resolution on "Bad
+ Request" and "Not found"
+ + rtpst2022-1-fecenc: Drain column packets on EOS
+ + rtpvp8depay: If configured to wait for keyframes after packet
+ loss, also do that if incomplete frames are detected
+ + splitmuxsink: Don't crash on EOS without buffer
+ + splitmuxsrc:
+ - Stop pad task before cleanup
+ - Don't consider unlinked pads when deactivating part
+ + soup: libsoup3 makes audio streaming stop
+ + v4l2: fix critical when unreferencign buffer with no data
+ + v4l2bufferpool: Fix debug trace
+ + v4l2object: Add support for Apple's full-range bt709 colorspace
+ variant 1:3:5:1
+ + v4l2videocodec: workaround for failure to fully drain frames
+ preceding MIDSTREAM renegotiation
+ + v4l2allocator: Fix invalid imported dmabuf fd
+ + videoflip: Fix caps negotiation when method is selected
+ + build failure trying to build jack examples
+ + examples: don't try and build jack examples if jack was
+ disabled
+ + tests: skip unit tests for dependency-less elements that have
+ been disabled
+
+-------------------------------------------------------------------
Old:
----
gst-plugins-good-1.20.3.tar.xz
New:
----
gst-plugins-good-1.20.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer-plugins-good.spec ++++++
--- /var/tmp/diff_new_pack.xOiaN2/_old 2022-10-25 11:18:43.901966994 +0200
+++ /var/tmp/diff_new_pack.xOiaN2/_new 2022-10-25 11:18:43.905967003 +0200
@@ -26,7 +26,7 @@
%define gst_branch 1.0
Name: gstreamer-plugins-good
-Version: 1.20.3
+Version: 1.20.4
Release: 0
Summary: GStreamer Streaming-Media Framework Plug-Ins
License: LGPL-2.1-or-later
++++++ gst-plugins-good-1.20.3.tar.xz -> gst-plugins-good-1.20.4.tar.xz ++++++
++++ 2898 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gstreamer-plugins-libav for openSUSE:Factory checked in at 2022-10-25 11:18:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-libav (Old)
and /work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-plugins-libav"
Tue Oct 25 11:18:35 2022 rev:34 rq:1030672 version:1.20.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/gstreamer-plugins-libav/gstreamer-plugins-libav.changes 2022-06-24 08:44:51.219108470 +0200
+++ /work/SRC/openSUSE:Factory/.gstreamer-plugins-libav.new.2275/gstreamer-plugins-libav.changes 2022-10-25 11:18:42.501963891 +0200
@@ -1,0 +2,11 @@
+Sat Oct 22 09:03:41 UTC 2022 - Bj��rn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 1.20.4:
+ + avauddec:
+ - Fix regression with WMA files, would throw an error at EOS.
+ - Fix unnecessary reconfiguration if the audio layout isn't
+ specified.
+ + libav: Fix for APNG encoder property registration.
+ + Failure to decode end of WMA file.
+
+-------------------------------------------------------------------
Old:
----
gst-libav-1.20.3.tar.xz
New:
----
gst-libav-1.20.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer-plugins-libav.spec ++++++
--- /var/tmp/diff_new_pack.3mL6PL/_old 2022-10-25 11:18:42.873964716 +0200
+++ /var/tmp/diff_new_pack.3mL6PL/_new 2022-10-25 11:18:42.881964734 +0200
@@ -19,7 +19,7 @@
%define gst_branch 1.0
Name: gstreamer-plugins-libav
-Version: 1.20.3
+Version: 1.20.4
Release: 0
Summary: A ffmpeg/libav plugin for GStreamer
License: LGPL-2.1-or-later
++++++ gst-libav-1.20.3.tar.xz -> gst-libav-1.20.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/ChangeLog new/gst-libav-1.20.4/ChangeLog
--- old/gst-libav-1.20.3/ChangeLog 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/ChangeLog 2022-10-12 17:39:51.000000000 +0200
@@ -1,7 +1,67 @@
+=== release 1.20.4 ===
+
+2022-10-12 16:39:47 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * NEWS:
+ * RELEASE:
+ * gst-libav.doap:
+ * meson.build:
+ Release 1.20.4
+
+2022-10-12 16:39:40 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * ChangeLog:
+ Update ChangeLogs for 1.20.4
+
+2022-10-04 21:27:36 +0200 Mathieu Duponchelle <mathieu(a)centricular.com>
+
+ * ext/libav/gstavauddec.c:
+ avauddec: address regression with WMA files ..
+ By outputting lead-in samples that FFmpeg now would like us to ignore,
+ and discarding trailing samples that it would now like us to output.
+ See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1474
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1348
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3125>
+
+2022-09-29 12:42:21 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * ext/libav/gstavauddec.c:
+ avauddec: fix unnecessary reconfiguration if the audio layout isn't specified
+ It would constantly want to renegotiate (and spam the debug log) even
+ though the channel layout hasn't actually changed. We use the same
+ fallback in gst_ffmpegauddec_negotiate() already.
+ This happens with WMA files for example.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3105>
+
+2022-07-07 22:16:30 +0900 Seungha Yang <seungha(a)centricular.com>
+
+ * ext/libav/gstavcfg.c:
+ libav: Fix for APNG encoder property registration
+ The AVClass name of Animated PNG in FFmpeg 5.x is "(A)PNG"
+ and it will be converted to "-a-png" through
+ g_ascii_strdown() and g_strcanon(). But GLib disallow leading '-'
+ character for a GType name. Strip leading '-' to workaround it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2733>
+
+2022-06-29 10:55:13 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * meson.build:
+ coding style: allow declarations after statement
+ See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1243/
+ and https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/78
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2702>
+
+2022-06-16 00:59:00 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * meson.build:
+ Back to development
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2619>
+
=== release 1.20.3 ===
2022-06-15 23:36:18 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+ * ChangeLog:
* NEWS:
* RELEASE:
* gst-libav.doap:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/NEWS new/gst-libav-1.20.4/NEWS
--- old/gst-libav-1.20.3/NEWS 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/NEWS 2022-10-12 17:39:51.000000000 +0200
@@ -2,13 +2,13 @@
GStreamer 1.20.0 was originally released on 3 February 2022.
-The latest bug-fix release in the 1.20 series is 1.20.3 and was released
-on 15 June 2022.
+The latest bug-fix release in the 1.20 series is 1.20.4 and was released
+on 12 October 2022.
See https://gstreamer.freedesktop.org/releases/1.20/ for the latest
version of this document.
-Last updated: Monday 15 June 2022, 17:00 UTC (log)
+Last updated: Wednesday 12 October 2022, 15:00 UTC (log)
Introduction
@@ -757,7 +757,8 @@
- matroskamux: accept in-band SPS/PPS/VPS for H.264 and H.265
(i.e.��stream-format avc3 and hev1) which allows on-the-fly
- profile/level/resolution changes.
+ profile/level changes, and from 1.20.4 onwards also resolution
+ changes.
- matroskamux: new "cluster-timestamp-offset" property, useful for use
cases where the container timestamps should map to some absolute
@@ -909,7 +910,7 @@
- vp8enc: finish support for temporal scalability: two new properties
("temporal-scalability-layer-flags",
"temporal-scalability-layer-sync-flags") and a unit change on the
- "temporal-scalability-target-bitrate" property (now expects bps);
+ "temporal-scalability-target-bitrate��� property (now expects bps);
also make temporal scalability details available to RTP payloaders
as buffer metadata.
@@ -1754,7 +1755,7 @@
names of internal elements anyway.
- The vp8enc element now expects bps (bits per second) for the
- "temporal-scalability-target-bitrate" property, which is consistent
+ "temporal-scalability-target-bitrate��� property, which is consistent
with the "target-bitrate" property. Since additional configuration
is required with modern libvpx to make temporal scaling work anyway,
chances are that very few people will have been using this property
@@ -2503,15 +2504,293 @@
- List of Merge Requests applied in 1.20.3
- List of Issues fixed in 1.20.3
+1.20.4
+
+The fourth 1.20 bug-fix release (1.20.4) was released on 12 October
+2022.
+
+This release only contains bugfixes and it should be safe to upgrade
+from 1.20.x.
+
+Highlighted bugfixes in 1.20.4
+
+- avaudiodec: fix playback issue with WMA files, would throw an error
+ at EOS with FFmpeg 5.x
+- Fix deadlock when loading gst-editing-services plugin
+- Fix input buffering capacity in live mode for aggregator,
+ video/audio aggregator subclasses, muxers
+- glimagesink: fix crash on Android
+- subtitle handling and subtitle overlay fixes
+- matroska-mux: allow width + height changes for avc3|hev1|vp8|vp9
+- rtspsrc: fix control url handling for spec compliant servers and add
+ fallback for incompliant servers
+- WebRTC fixes
+- RTP retransmission fixes
+- video: fixes for formats with 4x subsampling and horizontal co-sited
+ chroma (Y41B, YUV9, YVU9 and IYU9)
+- macOS build and packaging fixes, in particular fix finding of gio
+ modules on macOS for https/TLS support
+- Performance improvements
+- Miscellaneous bug fixes, memory leak fixes, and other stability and
+ reliability improvements
+
+gstreamer
+
+- buffer: drop parent meta in deep copy/foreach_metadata
+- devicemonitor: Use a sync bus handler for the provider to avoid
+ accumulating all messages until the provider is stopped
+- element: Fix requesting of pads with string templates
+- gst: Protect initialization state with a recursive mutex
+- gst: add missing define guard for build without gstreamer debug
+ logging support
+- gst_init: Initialize static plugins just before dynamic plugins
+- info: Parse ���NONE��� as a valid level name
+- meta: Set the parent refcount of the GstStructure correctly
+- pluginloader: Don���t hang on short reads/writes
+- tracers: leaks: fix potentially invalid memory access when trying to
+ detect object type
+- tracers: leaks: fix object-refings.class flags
+- uri: When setting the same string again do nothing
+- value: Don���t loop forever when serializing invalid flag
+
+Base Libraries
+
+- aggregator: fix input buffering in live mode (was too low before in
+ many cases)
+- aggregator: fix reversed active/flushing arguments in debug log
+ output
+- aggregator: Reset EOS flag after receiving a stream-start event
+
+Core Elements
+
+- queue2: Hold the lock when modifying sinkresult
+- queue2: Fix deadlock when deactivate is called in pull mode
+
+gst-plugins-base
+
+- decodebin3: fix mutex leaks
+- decodebin3: Fix memory issues with active selection list
+- decodebin3, uridecodebin3, urisourcebin: Event handling fixes
+- decodebin3: fix EOS event sequence
+- parsebin: Avoid crash with unknown streams
+- parsebin: SIGSEGV during HLS stream using souphttpsrc
+- glimagesink: only allow setting the GL display/context if it is a
+ valid value
+- glimagesink: segfault on android devices
+- gstgl: Fix several memory leaks in macOS
+- opusenc: improve inband-fec property documentation
+- playsink: Hold a reference to the soft volume element
+- pbutils: descriptions: fix gst_pb_utils_get_caps_description_flags()
+- rtspurl: Use gst_uri_join_strings() in
+ gst_rtsp_url_get_request_uri_with_control() instead of a
+ hand-crafted, wrong version
+- rtspconnection: protect cancellable by a mutex
+- sdpmessage: Don���t set SDP medias from caps without
+ media/payload/clock-rate fields
+- samiparse: fix handling of self-closing tags
+- ssaparse: include required system headers for isspace() and sscanf()
+ functions
+- subparse: fix crash when parsing invalid timestamps in mpl2
+- subparse fixes
+- textoverlay: Don���t miscalculate text running times
+- videoaggregator: always convert when user provides converter-config
+- video: Fix scaling in 4x horizontal co-sited chroma (Y41B, YUV9,
+ YVU9 and IYU9)
+- xmptag: register musicbrainz tags during init to fix critical in
+ jpegparse
+- xvimagesink: fix image leaks in error code path
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+Tools
+
+- No changes
+
+gst-plugins-good
+
+- alpha: fix stride issue when out buffer has padding on right
+- isoff: Fix earliest pts field parse issue
+- matroska-mux: allow width + height changes for avc3|hev1|vp8|vp9
+- qt: Fix another instance of Qt/GStreamer both defining GLsync
+ differently
+- qtdemux: Avoid crash on reconfiguring.
+- qtdemux: guard against timestamp calculation overflow in gap event
+ loop
+- qtdemux: Don���t use invalid values from failed trex parsing
+- qtdemux: possible endless loop
+- rtpjitterbuffer: Only unschedule timers for late packets if they���re
+ not RTX packets and only once
+- rtpjitterbuffer: remove lost timer for out of order packets
+- rtspsrc: SETUP generates 400 Bad Request
+- rtspsrc: Retry SETUP with non-compliant URL resolution on ���Bad
+ Request��� and ���Not found���
+- rtpst2022-1-fecenc: Drain column packets on EOS
+- rtpvp8depay: If configured to wait for keyframes after packet loss,
+ also do that if incomplete frames are detected
+- splitmuxsink: Don���t crash on EOS without buffer
+- splitmuxsrc: Stop pad task before cleanup
+- splitmuxsrc: don���t consider unlinked pads when deactivating part
+- soup: libsoup3 makes audio streaming stop
+- v4l2: fix critical when unreferencign buffer with no data
+- v4l2bufferpool: Fix debug trace
+- v4l2object: Add support for Apple���s full-range bt709 colorspace
+ variant 1:3:5:1
+- v4l2videocodec: workaround for failure to fully drain frames
+ preceding MIDSTREAM renegotiation
+- v4l2allocator: Fix invalid imported dmabuf fd
+- videoflip: Fix caps negotiation when method is selected
+- build failure trying to build jack examples
+- examples: don���t try and build jack examples if jack was disabled
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+gst-plugins-bad
+
+- amcvideodec: fix GstAmcSurfaceTexture segfault
+- audiobuffersplit: Fix drift that was introduced by wrong
+ calculations in gapless mode
+- avfvideosrc: Fix wrong default framerate value
+- audiovisualizer: fix buffer mapping to not increase refcount
+- d3d11decoder: Check 16K resolution support
+- d3d11videosink: Fix for force-aspect-ratio setting when rendering on
+ shared texture
+- mxfdemux: Always calculate BlockAlign of raw audio to work around
+ files with broken BlockAlign field in the headers
+- nvdec: Fix for HEVC decoding when coded resolution is larger than
+ display resolution
+- openh264: Register debug categories earlier
+- openh264enc: Fix constrained-high encoding
+- openmpt: update from now deprecated api
+- GstPlay: missing cleanup for g_autoptr
+- player/play: Fix object construction and various leaks
+- player: Plug a memory leak
+- proxysink: Make sure stream-start and caps events are forwarded, and
+ fix memory leak
+- tsdemux: Don���t trigger a program change when falling back to
+ ignore-pcr behaviour
+- va: allocator: Fix translation of VADRMPRIMESurfaceDescriptor
+- va: h265dec: Fix a crash because of missing reference frame.
+- vah265dec: Decoder segfaults on seek
+- wasapi: Implement default audio channel mask
+- wasapi2: Fix initial mute/volume setting
+- webrtcbin: Limit sink query to sink pads
+- webrtcbin: Fix pointer dereference before null check
+- webrtc: Make sure to return NULL when validating TURN server fails
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+gst-plugins-ugly
+
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+gst-libav
+
+- avauddec: fix regression with WMA files, would throw an error at EOS
+- avauddec: fix unnecessary reconfiguration if the audio layout isn���t
+ specified
+- libav: Fix for APNG encoder property registration
+- Failure to decode end of WMA file
+
+gst-rtsp-server
+
+- gst-rtsp-server: Fix pushing backlog to client
+- rtsp-server: stream: Don���t loop forever if binding to the multicast
+ address fails
+
+gstreamer-vaapi
+
+- vaapi: Handle when no encoders/decoders available.
+- vaapi: Crash in gst_vaapidecode_class_init() when no
+ decoders/encoders available
+
+gstreamer-sharp
+
+- No changes
+
+gst-omx
+
+- No changes
+
+gst-python
+
+- python: Do not call gst_init when it is already is_initialized
+
+gst-editing-services
+
+- Deadlock in ges because of recursive gst_init() call
+- ges/gstframepositioner: don���t create one compositor per frame meta
+- nle: clear seek event properly
+
+gst-examples:
+
+- examples/webrtc/signalling: Fix compatibility with Python 3.10
+
+Development build environment + gst-full build
+
+- build: Fix some compiler warnings by upgrading wraps
+- dv, opusparse: fix duplicate symbols in static build
+- Fix fedora 36 warnings - OpenSSL 3.0 deprecations + GLib 2.72
+ tls-validation deprecations
+- Various macOS build fixes
+- meson: Improve certifi documentation on macOS
+
+Cerbero build tool and packaging changes in 1.20.4
+
+- Add Ubuntu 22.04 Jammy Jellyfish
+- Add gst-rtsp-server library to the macOS framework
+- cerbero: Quick fix for gen-cache breakage
+- macos: Fix the install_name for the GStreamer framework
+- Download using powershell on Windows and rework download func
+- macos: Add arm64 to the metadata for the installer
+- cerbero: Allow building on Linux ARM64
+- pkg-config.recipe: Add to core platform files list
+- git: Fix issue with last security patch
+- distros: Fix CentOS allowance
+- cerbero: Print working directory for commands that are run
+- cerbero: Fix license property usage example
+- Fix issue getting distro_version in Debian Bookworm
+- glib: Fix gio modules loading on macOS
+- cmake: Fix macOS ARM64 -> x86_64 cross-compilation
+- Fix logo display in macOS installer
+- openssl.recipe: Fix segfault on latest macOS
+- msvc: Fix for broken CRT linking at application project because of
+ MSVCRT linking
+- cerbero: Do not add rpaths that already exist on macOS
+- android: fix build with android gradle plugin 7.2
+- macOS framework is unusable starting from 1.18.0
+
+Contributors to 1.20.4
+
+Adrian Fiergolski, Aleksandr Slobodeniuk, Andoni Morales Alastruey,
+Andrew Pritchard, Bruce Liang, Corentin Damman, Daniel Morin, Edward
+Hervey, Elliot Chen, Fabian Orccon, fduncanh, Guillaume Desmottes,
+Haihua Hu, He Junyan, Ignazio Pillai, James Cowgill, James Hilliard, Jan
+Alexander Steffens (heftig), Jan Schmidt, Jianhui Dai, Jonas Danielsson,
+Jordan Petridis, Khem Raj, Krystian Wojtas, Martin D��rum, Mart Raudsepp,
+Mathieu Duponchelle, Matthew Waters, Matthias Clasen, Nicolas Dufresne,
+Nirbheek Chauhan, Olivier Cr��te, Pawe�� Stawicki, Philippe Normand,
+Philipp Zabel, Piotr Brzezi��ski, Rafael Caricio, Rafael Sobral, Raul
+Tambre, Ruben Gonzalez, Sangchul Lee, Sebastian Dr��ge, Seungha Yang,
+St��phane Cerveau, Thibault Saunier, Tim-Philipp M��ller, Tristan
+Matthews, V��ctor Manuel J��quez Leal, Xavier Claessens, Zhiyuan Liu,
+
+��� and many others who have contributed bug reports, translations, sent
+suggestions or helped testing. Thank you all!
+
+List of merge requests and issues fixed in 1.20.4
+
+- List of Merge Requests applied in 1.20.4
+- List of Issues fixed in 1.20.4
+
Schedule for 1.22
Our next major feature release will be 1.22, and 1.21 will be the
unstable development version leading up to the stable 1.22 release. The
development of 1.21/1.22 will happen in the git main branch.
-The plan for the 1.22 development cycle is yet to be confirmed. Assuming
-no major project-wide reorganisations in the 1.22 cycle we might try and
-aim for a release around August 2022.
+The plan for the 1.22 development cycle is now confirmed, and we aim for
+a 1.22.0 release in December 2022.
1.22 will be backwards-compatible to the stable 1.20, 1.18, 1.16, 1.14,
1.12, 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/RELEASE new/gst-libav-1.20.4/RELEASE
--- old/gst-libav-1.20.3/RELEASE 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/RELEASE 2022-10-12 17:39:51.000000000 +0200
@@ -1,4 +1,4 @@
-This is GStreamer gst-libav 1.20.3.
+This is GStreamer gst-libav 1.20.4.
The GStreamer team is thrilled to announce a new major feature release
of your favourite cross-platform multimedia framework!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/ext/libav/gstavauddec.c new/gst-libav-1.20.4/ext/libav/gstavauddec.c
--- old/gst-libav-1.20.3/ext/libav/gstavauddec.c 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/ext/libav/gstavauddec.c 2022-10-12 17:39:51.000000000 +0200
@@ -220,6 +220,14 @@
return FALSE;
}
ffmpegdec->context->opaque = ffmpegdec;
+
+ /* FIXME: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1474 */
+ if ((oclass->in_plugin->capabilities & AV_CODEC_CAP_DELAY) != 0
+ && (oclass->in_plugin->id == AV_CODEC_ID_WMAV1
+ || oclass->in_plugin->id == AV_CODEC_ID_WMAV2)) {
+ ffmpegdec->context->flags2 |= AV_CODEC_FLAG2_SKIP_MANUAL;
+ }
+
GST_OBJECT_UNLOCK (ffmpegdec);
return TRUE;
@@ -357,6 +365,9 @@
GstAudioLayout layout;
gint channels = av_get_channel_layout_nb_channels (frame->channel_layout);
+ if (channels == 0)
+ channels = frame->channels;
+
format = gst_ffmpeg_smpfmt_to_audioformat (frame->format, &layout);
if (format == GST_AUDIO_FORMAT_UNKNOWN)
return TRUE;
@@ -599,11 +610,14 @@
if (avcodec_send_packet (ffmpegdec->context, NULL))
goto send_packet_failed;
- do {
- got_frame = gst_ffmpegauddec_frame (ffmpegdec, &ret);
- if (got_frame)
- got_any_frames = TRUE;
- } while (got_frame);
+ /* FIXME: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1474 */
+ if (!(ffmpegdec->context->flags2 & AV_CODEC_FLAG2_SKIP_MANUAL)) {
+ do {
+ got_frame = gst_ffmpegauddec_frame (ffmpegdec, &ret);
+ if (got_frame)
+ got_any_frames = TRUE;
+ } while (got_frame);
+ }
avcodec_flush_buffers (ffmpegdec->context);
/* FFMpeg will return AVERROR_EOF if it's internal was fully drained
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/ext/libav/gstavcfg.c new/gst-libav-1.20.4/ext/libav/gstavcfg.c
--- old/gst-libav-1.20.3/ext/libav/gstavcfg.c 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/ext/libav/gstavcfg.c 2022-10-12 17:39:51.000000000 +0200
@@ -91,10 +91,19 @@
gchar *lower_obj_name = g_ascii_strdown ((*obj)->class_name, -1);
gchar *enum_name = g_strdup_printf ("%s-%s", lower_obj_name, top_opt->unit);
gboolean none_default = TRUE;
+ const gchar *enum_name_strip;
g_strcanon (enum_name, G_CSET_a_2_z G_CSET_DIGITS, '-');
- if ((res = g_type_from_name (enum_name)))
+ /* strip leading '-'s */
+ enum_name_strip = enum_name;
+ while (enum_name_strip[0] == '-')
+ enum_name_strip++;
+
+ if (enum_name_strip[0] == '\0')
+ goto done;
+
+ if ((res = g_type_from_name (enum_name_strip)))
goto done;
while ((opt = av_opt_next (obj, opt))) {
@@ -150,9 +159,8 @@
}
}
- res =
- g_enum_register_static (enum_name, &g_array_index (values, GEnumValue,
- 0));
+ res = g_enum_register_static (enum_name_strip,
+ &g_array_index (values, GEnumValue, 0));
gst_type_mark_as_plugin_api (res, 0);
}
@@ -177,10 +185,19 @@
GArray *values = g_array_new (TRUE, TRUE, sizeof (GEnumValue));
gchar *lower_obj_name = g_ascii_strdown ((*obj)->class_name, -1);
gchar *flags_name = g_strdup_printf ("%s-%s", lower_obj_name, top_opt->unit);
+ const gchar *flags_name_strip;
g_strcanon (flags_name, G_CSET_a_2_z G_CSET_DIGITS, '-');
- if ((res = g_type_from_name (flags_name)))
+ /* strip leading '-'s */
+ flags_name_strip = flags_name;
+ while (flags_name_strip[0] == '-')
+ flags_name_strip++;
+
+ if (flags_name_strip[0] == '\0')
+ goto done;
+
+ if ((res = g_type_from_name (flags_name_strip)))
goto done;
while ((opt = av_opt_next (obj, opt))) {
@@ -211,7 +228,7 @@
g_array_sort (values, (GCompareFunc) cmp_flags_value);
res =
- g_flags_register_static (flags_name, &g_array_index (values,
+ g_flags_register_static (flags_name_strip, &g_array_index (values,
GFlagsValue, 0));
gst_type_mark_as_plugin_api (res, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/gst-libav.doap new/gst-libav-1.20.4/gst-libav.doap
--- old/gst-libav-1.20.3/gst-libav.doap 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/gst-libav.doap 2022-10-12 17:39:51.000000000 +0200
@@ -34,6 +34,16 @@
<release>
<Version>
+ <revision>1.20.4</revision>
+ <branch>1.20</branch>
+ <name></name>
+ <created>2022-10-12</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.20.4.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.20.3</revision>
<branch>1.20</branch>
<name></name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-libav-1.20.3/meson.build new/gst-libav-1.20.4/meson.build
--- old/gst-libav-1.20.3/meson.build 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-libav-1.20.4/meson.build 2022-10-12 17:39:51.000000000 +0200
@@ -1,5 +1,5 @@
project('gst-libav', 'c',
- version : '1.20.3',
+ version : '1.20.4',
meson_version : '>= 0.59',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])
@@ -178,7 +178,6 @@
'-Waddress',
'-Wno-multichar',
'-Waggregate-return',
- '-Wdeclaration-after-statement',
'-Wvla',
'-Wpointer-arith',
]
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gstreamer-plugins-ugly for openSUSE:Factory checked in at 2022-10-25 11:18:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-plugins-ugly (Old)
and /work/SRC/openSUSE:Factory/.gstreamer-plugins-ugly.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-plugins-ugly"
Tue Oct 25 11:18:34 2022 rev:72 rq:1030671 version:1.20.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/gstreamer-plugins-ugly/gstreamer-plugins-ugly.changes 2022-06-24 08:44:52.727110159 +0200
+++ /work/SRC/openSUSE:Factory/.gstreamer-plugins-ugly.new.2275/gstreamer-plugins-ugly.changes 2022-10-25 11:18:41.425961507 +0200
@@ -1,0 +2,7 @@
+Sat Oct 22 09:00:12 UTC 2022 - Bj��rn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 1.20.4:
+ + tests: skip unit tests for dependency-less elements that have
+ been disabled.
+
+-------------------------------------------------------------------
Old:
----
gst-plugins-ugly-1.20.3.tar.xz
New:
----
gst-plugins-ugly-1.20.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer-plugins-ugly.spec ++++++
--- /var/tmp/diff_new_pack.ENz9oQ/_old 2022-10-25 11:18:41.853962455 +0200
+++ /var/tmp/diff_new_pack.ENz9oQ/_new 2022-10-25 11:18:41.873962499 +0200
@@ -25,7 +25,7 @@
%define gstreamer_req_version %(echo %{version} | sed -e "s/+.*//")
Name: gstreamer-plugins-ugly
-Version: 1.20.3
+Version: 1.20.4
Release: 0
Summary: GStreamer Streaming-Media Framework Plug-Ins
License: LGPL-2.1-or-later
++++++ gst-plugins-ugly-1.20.3.tar.xz -> gst-plugins-ugly-1.20.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/ChangeLog new/gst-plugins-ugly-1.20.4/ChangeLog
--- old/gst-plugins-ugly-1.20.3/ChangeLog 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-plugins-ugly-1.20.4/ChangeLog 2022-10-12 17:39:51.000000000 +0200
@@ -1,7 +1,44 @@
+=== release 1.20.4 ===
+
+2022-10-12 16:39:47 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * NEWS:
+ * RELEASE:
+ * gst-plugins-ugly.doap:
+ * meson.build:
+ Release 1.20.4
+
+2022-10-12 16:39:40 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * ChangeLog:
+ Update ChangeLogs for 1.20.4
+
+2022-06-29 10:55:13 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * meson.build:
+ coding style: allow declarations after statement
+ See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1243/
+ and https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/78
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2702>
+
+2022-06-25 19:50:10 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * tests/check/meson.build:
+ tests: skip unit tests for dependency-less elements that have been disabled
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1136
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2672>
+
+2022-06-16 00:59:00 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+
+ * meson.build:
+ Back to development
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2619>
+
=== release 1.20.3 ===
2022-06-15 23:36:18 +0100 Tim-Philipp M��ller <tim(a)centricular.com>
+ * ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-ugly.doap:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/NEWS new/gst-plugins-ugly-1.20.4/NEWS
--- old/gst-plugins-ugly-1.20.3/NEWS 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-plugins-ugly-1.20.4/NEWS 2022-10-12 17:39:51.000000000 +0200
@@ -2,13 +2,13 @@
GStreamer 1.20.0 was originally released on 3 February 2022.
-The latest bug-fix release in the 1.20 series is 1.20.3 and was released
-on 15 June 2022.
+The latest bug-fix release in the 1.20 series is 1.20.4 and was released
+on 12 October 2022.
See https://gstreamer.freedesktop.org/releases/1.20/ for the latest
version of this document.
-Last updated: Monday 15 June 2022, 17:00 UTC (log)
+Last updated: Wednesday 12 October 2022, 15:00 UTC (log)
Introduction
@@ -757,7 +757,8 @@
- matroskamux: accept in-band SPS/PPS/VPS for H.264 and H.265
(i.e.��stream-format avc3 and hev1) which allows on-the-fly
- profile/level/resolution changes.
+ profile/level changes, and from 1.20.4 onwards also resolution
+ changes.
- matroskamux: new "cluster-timestamp-offset" property, useful for use
cases where the container timestamps should map to some absolute
@@ -909,7 +910,7 @@
- vp8enc: finish support for temporal scalability: two new properties
("temporal-scalability-layer-flags",
"temporal-scalability-layer-sync-flags") and a unit change on the
- "temporal-scalability-target-bitrate" property (now expects bps);
+ "temporal-scalability-target-bitrate��� property (now expects bps);
also make temporal scalability details available to RTP payloaders
as buffer metadata.
@@ -1754,7 +1755,7 @@
names of internal elements anyway.
- The vp8enc element now expects bps (bits per second) for the
- "temporal-scalability-target-bitrate" property, which is consistent
+ "temporal-scalability-target-bitrate��� property, which is consistent
with the "target-bitrate" property. Since additional configuration
is required with modern libvpx to make temporal scaling work anyway,
chances are that very few people will have been using this property
@@ -2503,15 +2504,293 @@
- List of Merge Requests applied in 1.20.3
- List of Issues fixed in 1.20.3
+1.20.4
+
+The fourth 1.20 bug-fix release (1.20.4) was released on 12 October
+2022.
+
+This release only contains bugfixes and it should be safe to upgrade
+from 1.20.x.
+
+Highlighted bugfixes in 1.20.4
+
+- avaudiodec: fix playback issue with WMA files, would throw an error
+ at EOS with FFmpeg 5.x
+- Fix deadlock when loading gst-editing-services plugin
+- Fix input buffering capacity in live mode for aggregator,
+ video/audio aggregator subclasses, muxers
+- glimagesink: fix crash on Android
+- subtitle handling and subtitle overlay fixes
+- matroska-mux: allow width + height changes for avc3|hev1|vp8|vp9
+- rtspsrc: fix control url handling for spec compliant servers and add
+ fallback for incompliant servers
+- WebRTC fixes
+- RTP retransmission fixes
+- video: fixes for formats with 4x subsampling and horizontal co-sited
+ chroma (Y41B, YUV9, YVU9 and IYU9)
+- macOS build and packaging fixes, in particular fix finding of gio
+ modules on macOS for https/TLS support
+- Performance improvements
+- Miscellaneous bug fixes, memory leak fixes, and other stability and
+ reliability improvements
+
+gstreamer
+
+- buffer: drop parent meta in deep copy/foreach_metadata
+- devicemonitor: Use a sync bus handler for the provider to avoid
+ accumulating all messages until the provider is stopped
+- element: Fix requesting of pads with string templates
+- gst: Protect initialization state with a recursive mutex
+- gst: add missing define guard for build without gstreamer debug
+ logging support
+- gst_init: Initialize static plugins just before dynamic plugins
+- info: Parse ���NONE��� as a valid level name
+- meta: Set the parent refcount of the GstStructure correctly
+- pluginloader: Don���t hang on short reads/writes
+- tracers: leaks: fix potentially invalid memory access when trying to
+ detect object type
+- tracers: leaks: fix object-refings.class flags
+- uri: When setting the same string again do nothing
+- value: Don���t loop forever when serializing invalid flag
+
+Base Libraries
+
+- aggregator: fix input buffering in live mode (was too low before in
+ many cases)
+- aggregator: fix reversed active/flushing arguments in debug log
+ output
+- aggregator: Reset EOS flag after receiving a stream-start event
+
+Core Elements
+
+- queue2: Hold the lock when modifying sinkresult
+- queue2: Fix deadlock when deactivate is called in pull mode
+
+gst-plugins-base
+
+- decodebin3: fix mutex leaks
+- decodebin3: Fix memory issues with active selection list
+- decodebin3, uridecodebin3, urisourcebin: Event handling fixes
+- decodebin3: fix EOS event sequence
+- parsebin: Avoid crash with unknown streams
+- parsebin: SIGSEGV during HLS stream using souphttpsrc
+- glimagesink: only allow setting the GL display/context if it is a
+ valid value
+- glimagesink: segfault on android devices
+- gstgl: Fix several memory leaks in macOS
+- opusenc: improve inband-fec property documentation
+- playsink: Hold a reference to the soft volume element
+- pbutils: descriptions: fix gst_pb_utils_get_caps_description_flags()
+- rtspurl: Use gst_uri_join_strings() in
+ gst_rtsp_url_get_request_uri_with_control() instead of a
+ hand-crafted, wrong version
+- rtspconnection: protect cancellable by a mutex
+- sdpmessage: Don���t set SDP medias from caps without
+ media/payload/clock-rate fields
+- samiparse: fix handling of self-closing tags
+- ssaparse: include required system headers for isspace() and sscanf()
+ functions
+- subparse: fix crash when parsing invalid timestamps in mpl2
+- subparse fixes
+- textoverlay: Don���t miscalculate text running times
+- videoaggregator: always convert when user provides converter-config
+- video: Fix scaling in 4x horizontal co-sited chroma (Y41B, YUV9,
+ YVU9 and IYU9)
+- xmptag: register musicbrainz tags during init to fix critical in
+ jpegparse
+- xvimagesink: fix image leaks in error code path
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+Tools
+
+- No changes
+
+gst-plugins-good
+
+- alpha: fix stride issue when out buffer has padding on right
+- isoff: Fix earliest pts field parse issue
+- matroska-mux: allow width + height changes for avc3|hev1|vp8|vp9
+- qt: Fix another instance of Qt/GStreamer both defining GLsync
+ differently
+- qtdemux: Avoid crash on reconfiguring.
+- qtdemux: guard against timestamp calculation overflow in gap event
+ loop
+- qtdemux: Don���t use invalid values from failed trex parsing
+- qtdemux: possible endless loop
+- rtpjitterbuffer: Only unschedule timers for late packets if they���re
+ not RTX packets and only once
+- rtpjitterbuffer: remove lost timer for out of order packets
+- rtspsrc: SETUP generates 400 Bad Request
+- rtspsrc: Retry SETUP with non-compliant URL resolution on ���Bad
+ Request��� and ���Not found���
+- rtpst2022-1-fecenc: Drain column packets on EOS
+- rtpvp8depay: If configured to wait for keyframes after packet loss,
+ also do that if incomplete frames are detected
+- splitmuxsink: Don���t crash on EOS without buffer
+- splitmuxsrc: Stop pad task before cleanup
+- splitmuxsrc: don���t consider unlinked pads when deactivating part
+- soup: libsoup3 makes audio streaming stop
+- v4l2: fix critical when unreferencign buffer with no data
+- v4l2bufferpool: Fix debug trace
+- v4l2object: Add support for Apple���s full-range bt709 colorspace
+ variant 1:3:5:1
+- v4l2videocodec: workaround for failure to fully drain frames
+ preceding MIDSTREAM renegotiation
+- v4l2allocator: Fix invalid imported dmabuf fd
+- videoflip: Fix caps negotiation when method is selected
+- build failure trying to build jack examples
+- examples: don���t try and build jack examples if jack was disabled
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+gst-plugins-bad
+
+- amcvideodec: fix GstAmcSurfaceTexture segfault
+- audiobuffersplit: Fix drift that was introduced by wrong
+ calculations in gapless mode
+- avfvideosrc: Fix wrong default framerate value
+- audiovisualizer: fix buffer mapping to not increase refcount
+- d3d11decoder: Check 16K resolution support
+- d3d11videosink: Fix for force-aspect-ratio setting when rendering on
+ shared texture
+- mxfdemux: Always calculate BlockAlign of raw audio to work around
+ files with broken BlockAlign field in the headers
+- nvdec: Fix for HEVC decoding when coded resolution is larger than
+ display resolution
+- openh264: Register debug categories earlier
+- openh264enc: Fix constrained-high encoding
+- openmpt: update from now deprecated api
+- GstPlay: missing cleanup for g_autoptr
+- player/play: Fix object construction and various leaks
+- player: Plug a memory leak
+- proxysink: Make sure stream-start and caps events are forwarded, and
+ fix memory leak
+- tsdemux: Don���t trigger a program change when falling back to
+ ignore-pcr behaviour
+- va: allocator: Fix translation of VADRMPRIMESurfaceDescriptor
+- va: h265dec: Fix a crash because of missing reference frame.
+- vah265dec: Decoder segfaults on seek
+- wasapi: Implement default audio channel mask
+- wasapi2: Fix initial mute/volume setting
+- webrtcbin: Limit sink query to sink pads
+- webrtcbin: Fix pointer dereference before null check
+- webrtc: Make sure to return NULL when validating TURN server fails
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+gst-plugins-ugly
+
+- tests: skip unit tests for dependency-less elements that have been
+ disabled
+
+gst-libav
+
+- avauddec: fix regression with WMA files, would throw an error at EOS
+- avauddec: fix unnecessary reconfiguration if the audio layout isn���t
+ specified
+- libav: Fix for APNG encoder property registration
+- Failure to decode end of WMA file
+
+gst-rtsp-server
+
+- gst-rtsp-server: Fix pushing backlog to client
+- rtsp-server: stream: Don���t loop forever if binding to the multicast
+ address fails
+
+gstreamer-vaapi
+
+- vaapi: Handle when no encoders/decoders available.
+- vaapi: Crash in gst_vaapidecode_class_init() when no
+ decoders/encoders available
+
+gstreamer-sharp
+
+- No changes
+
+gst-omx
+
+- No changes
+
+gst-python
+
+- python: Do not call gst_init when it is already is_initialized
+
+gst-editing-services
+
+- Deadlock in ges because of recursive gst_init() call
+- ges/gstframepositioner: don���t create one compositor per frame meta
+- nle: clear seek event properly
+
+gst-examples:
+
+- examples/webrtc/signalling: Fix compatibility with Python 3.10
+
+Development build environment + gst-full build
+
+- build: Fix some compiler warnings by upgrading wraps
+- dv, opusparse: fix duplicate symbols in static build
+- Fix fedora 36 warnings - OpenSSL 3.0 deprecations + GLib 2.72
+ tls-validation deprecations
+- Various macOS build fixes
+- meson: Improve certifi documentation on macOS
+
+Cerbero build tool and packaging changes in 1.20.4
+
+- Add Ubuntu 22.04 Jammy Jellyfish
+- Add gst-rtsp-server library to the macOS framework
+- cerbero: Quick fix for gen-cache breakage
+- macos: Fix the install_name for the GStreamer framework
+- Download using powershell on Windows and rework download func
+- macos: Add arm64 to the metadata for the installer
+- cerbero: Allow building on Linux ARM64
+- pkg-config.recipe: Add to core platform files list
+- git: Fix issue with last security patch
+- distros: Fix CentOS allowance
+- cerbero: Print working directory for commands that are run
+- cerbero: Fix license property usage example
+- Fix issue getting distro_version in Debian Bookworm
+- glib: Fix gio modules loading on macOS
+- cmake: Fix macOS ARM64 -> x86_64 cross-compilation
+- Fix logo display in macOS installer
+- openssl.recipe: Fix segfault on latest macOS
+- msvc: Fix for broken CRT linking at application project because of
+ MSVCRT linking
+- cerbero: Do not add rpaths that already exist on macOS
+- android: fix build with android gradle plugin 7.2
+- macOS framework is unusable starting from 1.18.0
+
+Contributors to 1.20.4
+
+Adrian Fiergolski, Aleksandr Slobodeniuk, Andoni Morales Alastruey,
+Andrew Pritchard, Bruce Liang, Corentin Damman, Daniel Morin, Edward
+Hervey, Elliot Chen, Fabian Orccon, fduncanh, Guillaume Desmottes,
+Haihua Hu, He Junyan, Ignazio Pillai, James Cowgill, James Hilliard, Jan
+Alexander Steffens (heftig), Jan Schmidt, Jianhui Dai, Jonas Danielsson,
+Jordan Petridis, Khem Raj, Krystian Wojtas, Martin D��rum, Mart Raudsepp,
+Mathieu Duponchelle, Matthew Waters, Matthias Clasen, Nicolas Dufresne,
+Nirbheek Chauhan, Olivier Cr��te, Pawe�� Stawicki, Philippe Normand,
+Philipp Zabel, Piotr Brzezi��ski, Rafael Caricio, Rafael Sobral, Raul
+Tambre, Ruben Gonzalez, Sangchul Lee, Sebastian Dr��ge, Seungha Yang,
+St��phane Cerveau, Thibault Saunier, Tim-Philipp M��ller, Tristan
+Matthews, V��ctor Manuel J��quez Leal, Xavier Claessens, Zhiyuan Liu,
+
+��� and many others who have contributed bug reports, translations, sent
+suggestions or helped testing. Thank you all!
+
+List of merge requests and issues fixed in 1.20.4
+
+- List of Merge Requests applied in 1.20.4
+- List of Issues fixed in 1.20.4
+
Schedule for 1.22
Our next major feature release will be 1.22, and 1.21 will be the
unstable development version leading up to the stable 1.22 release. The
development of 1.21/1.22 will happen in the git main branch.
-The plan for the 1.22 development cycle is yet to be confirmed. Assuming
-no major project-wide reorganisations in the 1.22 cycle we might try and
-aim for a release around August 2022.
+The plan for the 1.22 development cycle is now confirmed, and we aim for
+a 1.22.0 release in December 2022.
1.22 will be backwards-compatible to the stable 1.20, 1.18, 1.16, 1.14,
1.12, 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/RELEASE new/gst-plugins-ugly-1.20.4/RELEASE
--- old/gst-plugins-ugly-1.20.3/RELEASE 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-plugins-ugly-1.20.4/RELEASE 2022-10-12 17:39:51.000000000 +0200
@@ -1,4 +1,4 @@
-This is GStreamer gst-plugins-ugly 1.20.3.
+This is GStreamer gst-plugins-ugly 1.20.4.
The GStreamer team is thrilled to announce a new major feature release
of your favourite cross-platform multimedia framework!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/gst-plugins-ugly.doap new/gst-plugins-ugly-1.20.4/gst-plugins-ugly.doap
--- old/gst-plugins-ugly-1.20.3/gst-plugins-ugly.doap 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-plugins-ugly-1.20.4/gst-plugins-ugly.doap 2022-10-12 17:39:51.000000000 +0200
@@ -35,6 +35,16 @@
<release>
<Version>
+ <revision>1.20.4</revision>
+ <branch>1.20</branch>
+ <name></name>
+ <created>2022-10-12</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.2…" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.20.3</revision>
<branch>1.20</branch>
<name></name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/meson.build new/gst-plugins-ugly-1.20.4/meson.build
--- old/gst-plugins-ugly-1.20.3/meson.build 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-plugins-ugly-1.20.4/meson.build 2022-10-12 17:39:51.000000000 +0200
@@ -1,5 +1,5 @@
project('gst-plugins-ugly', 'c',
- version : '1.20.3',
+ version : '1.20.4',
meson_version : '>= 0.59',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])
@@ -225,7 +225,6 @@
warning_c_flags = [
'-Wmissing-prototypes',
'-Wold-style-definition',
- '-Wdeclaration-after-statement',
'-Wnested-externs'
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/po/gst-plugins-ugly-1.0.pot new/gst-plugins-ugly-1.20.4/po/gst-plugins-ugly-1.0.pot
--- old/gst-plugins-ugly-1.20.3/po/gst-plugins-ugly-1.0.pot 2022-06-16 00:37:14.214312300 +0200
+++ new/gst-plugins-ugly-1.20.4/po/gst-plugins-ugly-1.0.pot 2022-10-12 17:40:43.114389400 +0200
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: gst-plugins-ugly-1.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-06-15 23:37+0100\n"
+"POT-Creation-Date: 2022-10-12 16:40+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL(a)li.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gst-plugins-ugly-1.20.3/tests/check/meson.build new/gst-plugins-ugly-1.20.4/tests/check/meson.build
--- old/gst-plugins-ugly-1.20.3/tests/check/meson.build 2022-06-16 00:36:22.000000000 +0200
+++ new/gst-plugins-ugly-1.20.4/tests/check/meson.build 2022-10-12 17:39:51.000000000 +0200
@@ -1,7 +1,7 @@
# name, condition when to skip the test and extra dependencies
ugly_tests = [
[ 'elements/x264enc', not x264_dep.found(), [ x264_dep, gmodule_dep ] ],
- [ 'elements/xingmux' ],
+ [ 'elements/xingmux', get_option('xingmux').disabled()],
[ 'generic/states' ],
]
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gstreamer for openSUSE:Factory checked in at 2022-10-25 11:18:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer (Old)
and /work/SRC/openSUSE:Factory/.gstreamer.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer"
Tue Oct 25 11:18:34 2022 rev:81 rq:1030667 version:1.20.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/gstreamer/gstreamer.changes 2022-06-24 08:44:53.603111140 +0200
+++ /work/SRC/openSUSE:Factory/.gstreamer.new.2275/gstreamer.changes 2022-10-25 11:18:39.557957366 +0200
@@ -1,0 +2,53 @@
+Fri Oct 21 21:16:22 UTC 2022 - Bj��rn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 1.20.4:
+ + Highlighted bugfixes in 1.20.4:
+ - avaudiodec: fix playback issue with WMA files, would throw an
+ error at EOS with FFmpeg 5.x
+ - Fix deadlock when loading gst-editing-services plugin
+ - Fix input buffering capacity in live mode for aggregator,
+ video/audio aggregator subclasses, muxers
+ - glimagesink: fix crash on Android
+ - subtitle handling and subtitle overlay fixes
+ - matroska-mux: allow width + height changes for
+ avc3|hev1|vp8|vp9
+ - rtspsrc: fix control url handling for spec compliant servers
+ and add fallback for incompliant servers
+ - WebRTC fixes
+ - RTP retransmission fixes
+ - video: fixes for formats with 4x subsampling and horizontal
+ co-sited chroma (Y41B, YUV9, YVU9 and IYU9)
+ - Fix consuming of the macOS package as a framework in XCode
+ - Performance improvements
+ - Miscellaneous bug fixes, memory leak fixes, and other
+ stability and reliability improvements
+ + gstreamer:
+ - buffer: drop parent meta in deep copy/foreach_metadata
+ - devicemonitor: Use a sync bus handler for the provider to
+ avoid accumulating all messages until the provider is stopped
+ - element: Fix requesting of pads with string templates
+ - gst:
+ . Protect initialization state with a recursive mutex
+ . Add missing define guard for build without gstreamer debug
+ logging support
+ - gst_init: Initialize static plugins just before dynamic plugins
+ - info: Parse "NONE" as a valid level name
+ - meta: Set the parent refcount of the GstStructure correctly
+ - pluginloader: Don't hang on short reads/writes
+ - tracers: leaks:
+ . Fix potentially invalid memory access when trying to detect
+ object type
+ . Fix object-refings.class flags
+ - uri: When setting the same string again do nothing
+ - value: Don't loop forever when serializing invalid flag
+ + Base Libraries:
+ - aggregator:
+ . Fix input buffering in live mode (was too low before in
+ many cases)
+ . Fix reversed active/flushing arguments in debug log output
+ . Reset EOS flag after receiving a stream-start event
+ + Core Elements: queue2:
+ - Hold the lock when modifying sinkresult
+ - Fix deadlock when deactivate is called in pull mode
+
+-------------------------------------------------------------------
Old:
----
gstreamer-1.20.3.tar.xz
New:
----
gstreamer-1.20.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer.spec ++++++
--- /var/tmp/diff_new_pack.gm1kuC/_old 2022-10-25 11:18:40.045958448 +0200
+++ /var/tmp/diff_new_pack.gm1kuC/_new 2022-10-25 11:18:40.049958457 +0200
@@ -19,7 +19,7 @@
%define gst_branch 1.0
Name: gstreamer
-Version: 1.20.3
+Version: 1.20.4
Release: 0
Summary: Streaming-Media Framework Runtime
License: LGPL-2.1-or-later
++++++ gstreamer-1.20.3.tar.xz -> gstreamer-1.20.4.tar.xz ++++++
++++ 1821 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package yast2-trans for openSUSE:Factory checked in at 2022-10-25 11:18:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-trans (Old)
and /work/SRC/openSUSE:Factory/.yast2-trans.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-trans"
Tue Oct 25 11:18:32 2022 rev:274 rq:1030625 version:84.87.20221023.365770fb5e
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-trans/yast2-trans.changes 2022-10-18 12:44:26.081646529 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-trans.new.2275/yast2-trans.changes 2022-10-25 11:18:38.317954618 +0200
@@ -1,0 +2,21 @@
+Mon Oct 24 05:13:19 UTC 2022 - git(a)opensuse.org
+
+- Update to version 84.87.20221023.365770fb5e:
+ * Translated using Weblate (Czech)
+ * Translated using Weblate (Czech)
+ * Translated using Weblate (Dutch)
+ * Translated using Weblate (Dutch)
+ * Translated using Weblate (Slovak)
+ * Translated using Weblate (Slovak)
+ * Translated using Weblate (Japanese)
+ * Translated using Weblate (Catalan)
+ * Translated using Weblate (Japanese)
+ * Translated using Weblate (Catalan)
+ * New POT for text domain 'registration'.
+ * New POT for text domain 'installation'.
+ * New POT for text domain 'firstboot'.
+ * New POT for text domain 'country'.
+ * New POT for text domain 'network'.
+ * New POT for text domain 'autoinst'.
+
+-------------------------------------------------------------------
Old:
----
yast2-trans-84.87.20221016.284cfa770d.tar.xz
New:
----
yast2-trans-84.87.20221023.365770fb5e.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-trans.spec ++++++
--- /var/tmp/diff_new_pack.fJbfen/_old 2022-10-25 11:18:39.077956302 +0200
+++ /var/tmp/diff_new_pack.fJbfen/_new 2022-10-25 11:18:39.081956311 +0200
@@ -17,7 +17,7 @@
Name: yast2-trans
-Version: 84.87.20221016.284cfa770d
+Version: 84.87.20221023.365770fb5e
Release: 0
Summary: YaST2 - Translation Container Package
License: GPL-2.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.fJbfen/_old 2022-10-25 11:18:39.149956462 +0200
+++ /var/tmp/diff_new_pack.fJbfen/_new 2022-10-25 11:18:39.153956471 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/yast/yast-translations.git</param>
- <param name="changesrevision">284cfa770d03808f0fb9293ecde77496273704f1</param></service></servicedata>
+ <param name="changesrevision">365770fb5e9547d74126da5313a5afb161d3d2f0</param></service></servicedata>
(No newline at EOF)
++++++ yast2-trans-84.87.20221016.284cfa770d.tar.xz -> yast2-trans-84.87.20221023.365770fb5e.tar.xz ++++++
/work/SRC/openSUSE:Factory/yast2-trans/yast2-trans-84.87.20221016.284cfa770d.tar.xz /work/SRC/openSUSE:Factory/.yast2-trans.new.2275/yast2-trans-84.87.20221023.365770fb5e.tar.xz differ: char 27, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libHX for openSUSE:Factory checked in at 2022-10-25 11:18:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libHX (Old)
and /work/SRC/openSUSE:Factory/.libHX.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libHX"
Tue Oct 25 11:18:31 2022 rev:68 rq:1030598 version:4.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/libHX/libHX.changes 2022-07-06 15:41:33.542478286 +0200
+++ /work/SRC/openSUSE:Factory/.libHX.new.2275/libHX.changes 2022-10-25 11:18:36.845951355 +0200
@@ -1,0 +2,6 @@
+Sun Oct 23 12:12:50 UTC 2022 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Update to release 4.7
+ * string: new quoting modes HXQUOTE_BASE64URL & HXQUOTE_BASE64IMAP
+
+-------------------------------------------------------------------
Old:
----
libHX-4.6.tar.asc
libHX-4.6.tar.xz
New:
----
libHX-4.7.tar.asc
libHX-4.7.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libHX.spec ++++++
--- /var/tmp/diff_new_pack.LwiMuU/_old 2022-10-25 11:18:37.425952641 +0200
+++ /var/tmp/diff_new_pack.LwiMuU/_new 2022-10-25 11:18:37.429952649 +0200
@@ -18,7 +18,7 @@
Name: libHX
%define lname libHX32
-Version: 4.6
+Version: 4.7
Release: 0
Summary: Collection of routines for C and C++ programming
License: LGPL-2.1-or-later
++++++ libHX-4.6.tar.xz -> libHX-4.7.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/Makefile.am new/libHX-4.7/Makefile.am
--- old/libHX-4.6/Makefile.am 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/Makefile.am 2022-10-21 21:46:11.000000000 +0200
@@ -16,7 +16,7 @@
tarball:
# do not use mkdir_p here.
mkdir ${tmpdir}
- pushd ${top_srcdir} && git archive --prefix=${PACKAGE_NAME}-${PACKAGE_VERSION}/ HEAD | tar -C ${tmpdir} -x && popd
- pushd ${tmpdir}/${PACKAGE_NAME}-${PACKAGE_VERSION} && ./autogen.sh && popd
+ cd ${top_srcdir} && git archive --prefix=${PACKAGE_NAME}-${PACKAGE_VERSION}/ HEAD | tar -C ${tmpdir} -x
+ cd ${tmpdir}/${PACKAGE_NAME}-${PACKAGE_VERSION} && autoreconf -fi && rm -Rf autom4te.cache
tar --use=${packer} -C ${tmpdir} -cf ${PACKAGE_NAME}-${PACKAGE_VERSION}${packext} --owner=root --group=root ${PACKAGE_NAME}-${PACKAGE_VERSION}/
rm -Rf ${tmpdir}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/Makefile.in new/libHX-4.7/Makefile.in
--- old/libHX-4.6/Makefile.in 2022-06-27 18:47:07.050604960 +0200
+++ new/libHX-4.7/Makefile.in 2022-10-21 21:46:20.455607099 +0200
@@ -904,8 +904,8 @@
tarball:
# do not use mkdir_p here.
mkdir ${tmpdir}
- pushd ${top_srcdir} && git archive --prefix=${PACKAGE_NAME}-${PACKAGE_VERSION}/ HEAD | tar -C ${tmpdir} -x && popd
- pushd ${tmpdir}/${PACKAGE_NAME}-${PACKAGE_VERSION} && ./autogen.sh && popd
+ cd ${top_srcdir} && git archive --prefix=${PACKAGE_NAME}-${PACKAGE_VERSION}/ HEAD | tar -C ${tmpdir} -x
+ cd ${tmpdir}/${PACKAGE_NAME}-${PACKAGE_VERSION} && autoreconf -fi && rm -Rf autom4te.cache
tar --use=${packer} -C ${tmpdir} -cf ${PACKAGE_NAME}-${PACKAGE_VERSION}${packext} --owner=root --group=root ${PACKAGE_NAME}-${PACKAGE_VERSION}/
rm -Rf ${tmpdir}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/autogen.sh new/libHX-4.7/autogen.sh
--- old/libHX-4.6/autogen.sh 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/autogen.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-#!/bin/bash
-
-autoreconf -fi;
-rm -Rf autom4te*.cache;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/configure new/libHX-4.7/configure
--- old/libHX-4.6/configure 2022-06-27 18:47:06.586601524 +0200
+++ new/libHX-4.7/configure 2022-10-21 21:46:19.931610750 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for libHX 4.6.
+# Generated by GNU Autoconf 2.71 for libHX 4.7.
#
#
# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
@@ -618,8 +618,8 @@
# Identity of this package.
PACKAGE_NAME='libHX'
PACKAGE_TARNAME='libhx'
-PACKAGE_VERSION='4.6'
-PACKAGE_STRING='libHX 4.6'
+PACKAGE_VERSION='4.7'
+PACKAGE_STRING='libHX 4.7'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1375,7 +1375,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libHX 4.6 to adapt to many kinds of systems.
+\`configure' configures libHX 4.7 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1446,7 +1446,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libHX 4.6:";;
+ short | recursive ) echo "Configuration of libHX 4.7:";;
esac
cat <<\_ACEOF
@@ -1561,7 +1561,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libHX configure 4.6
+libHX configure 4.7
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2195,7 +2195,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libHX $as_me 4.6, which was
+It was created by libHX $as_me 4.7, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -3684,7 +3684,7 @@
# Define the identity of the package.
PACKAGE='libhx'
- VERSION='4.6'
+ VERSION='4.7'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -5926,10 +5926,6 @@
-enable_dlopen=yes
-
-
-
case `pwd` in
*\ * | *\ *)
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
@@ -9772,6 +9768,8 @@
+ enable_dlopen=no
+
enable_win32_dll=no
@@ -18761,7 +18759,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libHX $as_me 4.6, which was
+This file was extended by libHX $as_me 4.7, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -18829,7 +18827,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-libHX config.status 4.6
+libHX config.status 4.7
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/configure.ac new/libHX-4.7/configure.ac
--- old/libHX-4.6/configure.ac 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/configure.ac 2022-10-21 21:46:11.000000000 +0200
@@ -1,4 +1,4 @@
-AC_INIT([libHX], [4.6])
+AC_INIT([libHX], [4.7])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIR([m4])
@@ -11,7 +11,6 @@
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
AC_DISABLE_STATIC
-AC_LIBTOOL_DLOPEN
AM_PROG_LIBTOOL
saved_CXXFLAGS="$CXXFLAGS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/doc/api.rst new/libHX-4.7/doc/api.rst
--- old/libHX-4.6/doc/api.rst 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/doc/api.rst 2022-10-21 21:46:11.000000000 +0200
@@ -9,6 +9,8 @@
====== ====== ====== ========================================
RMV MinVer FirstA Name
====== ====== ====== ========================================
+4.7 4.7 4.7 HXQUOTE_BASE64IMAP
+4.7 4.7 4.7 HXQUOTE_BASE64URL
4.3 4.3 4.3 HX_unit_seconds
4.3 4.3 4.3 HX_strtoull_sec
4.2 4.2 4.2 HX_unit_size
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/doc/changelog.rst new/libHX-4.7/doc/changelog.rst
--- old/libHX-4.6/doc/changelog.rst 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/doc/changelog.rst 2022-10-21 21:46:11.000000000 +0200
@@ -1,3 +1,15 @@
+v4.7 (2022-10-21)
+=================
+
+Enhancements:
+
+* string: new quoting modes HXQUOTE_BASE64URL & HXQUOTE_BASE64IMAP
+
+Fixes:
+
+* socket: make HX_socket_from_env functional on OpenBSD
+
+
v4.6 (2022-06-27)
=================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/doc/libHX_Documentation.rst new/libHX-4.7/doc/libHX_Documentation.rst
--- old/libHX-4.6/doc/libHX_Documentation.rst 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/doc/libHX_Documentation.rst 2022-10-21 21:46:11.000000000 +0200
@@ -126,6 +126,7 @@
Miscellaneous
=============
+* `Type-checking casts <typechecking_casts.rst>`_
* `Helper headers <helper_headers.rst>`_ for other software
* `Macros <macros.rst>`_
* `Misc functions <misc_functions.rst>`_ that did not fit in any other category
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/doc/string_ops.rst new/libHX-4.7/doc/string_ops.rst
--- old/libHX-4.6/doc/string_ops.rst 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/doc/string_ops.rst 2022-10-21 21:46:11.000000000 +0200
@@ -175,6 +175,12 @@
``HXQUOTE_BASE64``
Transforms the string to BASE64, as described in `RFC 4648`_.
+``HXQUOTE_BASE64URL``
+ Transforms the string to base64url, as described in `RFC 4648`_.
+
+``HXQUOTE_BASE64IMAP``
+ Transforms the string to base64 for IMAP, as described in `RFC 3501`_.
+
``HXQUOTE_URIENC``
Escapes the string so that it becomes a valid part for an URI.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/doc/typecheck_casts.rst new/libHX-4.7/doc/typecheck_casts.rst
--- old/libHX-4.6/doc/typecheck_casts.rst 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/doc/typecheck_casts.rst 2022-10-21 21:46:11.000000000 +0200
@@ -132,6 +132,21 @@
Conversion from ``const type��*`` to and from ``const void��*``.
+Limitations
+-----------
+
+Because the implementation of our ``static_cast`` involves a C99 compound
+literals and those are not constant expressions, ``static_cast`` cannot be used
+in such contexts. (Cf. `GCC issue 105510
+<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105510#c3>`_).
+
+.. code-block:: c
+
+ static const int a = static_cast(int, 1U);
+
+Furthermore, because an implicit assignment is used in the implementation, it
+can trigger `-Wsign-conversion` warnings.
+
``const_cast``
==============
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/dvconfigure new/libHX-4.7/dvconfigure
--- old/libHX-4.6/dvconfigure 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/dvconfigure 1970-01-01 01:00:00.000000000 +0100
@@ -1,10 +0,0 @@
-#!/bin/bash
-
-topdir="${0%/*}";
-abstopdir=$(readlink -f "$topdir");
-if [ ! -e "${topdir}/configure" ]; then
- pushd "$topdir";
- ./autogen.sh;
- popd;
-fi;
-exec "$topdir/configure" CFLAGS="-O0 -ggdb3" CXXFLAGS="-O0 -ggdb3" "$@";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/include/libHX/string.h new/libHX-4.7/include/libHX/string.h
--- old/libHX-4.6/include/libHX/string.h 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/include/libHX/string.h 2022-10-21 21:46:11.000000000 +0200
@@ -28,6 +28,8 @@
HXQUOTE_URIENC,
HXQUOTE_SQLSQUOTE,
HXQUOTE_SQLBQUOTE,
+ HXQUOTE_BASE64URL,
+ HXQUOTE_BASE64IMAP,
_HXQUOTE_MAX,
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/qconf new/libHX-4.7/qconf
--- old/libHX-4.6/qconf 1970-01-01 01:00:00.000000000 +0100
+++ new/libHX-4.7/qconf 2022-10-21 21:46:11.000000000 +0200
@@ -0,0 +1,12 @@
+#!/bin/sh
+topdir="${0%/*}"
+if [ "$topdir" = "$0" ]; then
+ topdir=.
+fi
+abstopdir=$(readlink -f "$topdir")
+if [ ! -e "${topdir}/configure" ]; then
+ cd "$topdir"
+ autoreconf -fi
+ cd -
+fi
+exec "$topdir/configure" CFLAGS="-O0 -ggdb3" CXXFLAGS="-O0 -ggdb3" "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/src/socket.c new/libHX-4.7/src/socket.c
--- old/libHX-4.6/src/socket.c 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/src/socket.c 2022-10-21 21:46:11.000000000 +0200
@@ -37,7 +37,13 @@
int value = 0;
socklen_t optlen = sizeof(value);
int ret = getsockopt(fd, SOL_SOCKET, SO_ACCEPTCONN, STUPIDWIN(&value), &optlen);
- if (ret < 0 || value == 0)
+ if (ret < 0 && errno != ENOPROTOOPT)
+ /*
+ * E.g. OpenBSD's getsockopt does not recognize this - even
+ * though the flag with the same name exists and is known.
+ */
+ return -1;
+ if (ret == 0 && value == 0)
return -1;
#ifdef _WIN32
WSAPROTOCOL_INFO protinfo;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/src/string.c new/libHX-4.7/src/string.c
--- old/libHX-4.6/src/string.c 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/src/string.c 2022-10-21 21:46:11.000000000 +0200
@@ -602,14 +602,16 @@
* Encode @src into BASE-64 according to RFC 4648 and write result to @dest,
* which must be of appropriate size, plus one for a trailing NUL.
*/
-static char *HX_quote_base64(char *d, const char *s)
+static char *HX_quote_base64(char *d, const char *s, char x1, char x2)
{
- static const char a[] =
+ char a[] =
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
- "abcdefghijklmnopqrstuvwxyz0123456789+/";
+ "abcdefghijklmnopqrstuvwxyz0123456789??";
size_t len = strlen(s);
char *ret = d;
+ a[62] = x1;
+ a[63] = x2;
while (len > 0) {
if (len >= 3) {
len -= 3;
@@ -758,6 +760,8 @@
case HXQUOTE_LDAPRDN:
return HX_qsize_bsr(s, HX_quote_rules[type].chars, 2);
case HXQUOTE_BASE64:
+ case HXQUOTE_BASE64URL:
+ case HXQUOTE_BASE64IMAP:
return (strlen(s) + 2) / 3 * 4;
case HXQUOTE_URIENC:
return HX_qsize_bsa(s, HX_quote_rules[type].chars, 2);
@@ -816,7 +820,11 @@
case HXQUOTE_LDAPRDN:
return HX_quote_ldap(*free_me, src, rule->chars);
case HXQUOTE_BASE64:
- return HX_quote_base64(*free_me, src);
+ return HX_quote_base64(*free_me, src, '+', '/');
+ case HXQUOTE_BASE64URL:
+ return HX_quote_base64(*free_me, src, '-', '_');
+ case HXQUOTE_BASE64IMAP:
+ return HX_quote_base64(*free_me, src, '+', ',');
case HXQUOTE_URIENC:
return HX_quote_urlenc(*free_me, src);
case HXQUOTE_SQLSQUOTE:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libHX-4.6/src/tc-strquote.c new/libHX-4.7/src/tc-strquote.c
--- old/libHX-4.6/src/tc-strquote.c 2022-06-27 16:03:09.000000000 +0200
+++ new/libHX-4.7/src/tc-strquote.c 2022-10-21 21:46:11.000000000 +0200
@@ -26,6 +26,10 @@
static const char output4[] = "http%3A%2F%2Fuser%3Apass%40host.de%2F~path%2Ffile%28msvc%29%3Bstuff.php%3Fquery%5Bphpindex%5D%3Dvalue%26another%3Done%3Bstuff";
static const char input5[] = "echo hello `echo world`";
static const char output5[] = "echo hello ``echo world``";
+static const char input6[] = "\xfb\xef\xff";
+static const char output6[] = "++//";
+static const char input7[] = "\xfb\xef\xff";
+static const char output7[] = "--__";
static int test(const char *input, unsigned int mode, const char *expect)
{
@@ -65,6 +69,8 @@
tst(input3, HXQUOTE_BASE64, output3c);
tst(input4, HXQUOTE_URIENC, output4);
tst(input5, HXQUOTE_SQLBQUOTE, output5);
+ tst(input6, HXQUOTE_BASE64, output6);
+ tst(input7, HXQUOTE_BASE64URL, output7);
return 0;
#undef tst
}
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xwayland for openSUSE:Factory checked in at 2022-10-25 11:18:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xwayland (Old)
and /work/SRC/openSUSE:Factory/.xwayland.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xwayland"
Tue Oct 25 11:18:30 2022 rev:15 rq:1030894 version:22.1.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/xwayland/xwayland.changes 2022-10-20 11:10:12.767837489 +0200
+++ /work/SRC/openSUSE:Factory/.xwayland.new.2275/xwayland.changes 2022-10-25 11:18:35.441948243 +0200
@@ -1,0 +2,30 @@
+Mon Oct 24 13:50:22 UTC 2022 - Stefan Dirsch <sndirsch(a)suse.com>
+
+- U_Do-not-ignore-leave-events.patch
+ * fixes xwayland issue#1397, issue#1395
+
+-------------------------------------------------------------------
+Thu Oct 20 11:50:17 UTC 2022 - Stefan Dirsch <sndirsch(a)suse.com>
+
+- Update to version 22.1.4
+ * xwayland: Aggregate scroll axis events to fix kinetic scrolling
+ * Forbid server grabs by non-WM on *rootless* XWayland
+ * xkb: Avoid length-check failure on empty strings.
+ * ci: remove redundant slash in libxcvt repository url
+ * dix: Skip more code in SetRootClip for ROOT_CLIP_INPUT_ONLY
+ * dix: Fix overzealous caching of ResourceClientBits()
+ * xwayland: Prevent Xserver grabs with rootless
+ * xwayland: Delay wl_surface destruction
+ * build: Bump wayland requirement to 1.18
+ * xwayland: set tag on our surfaces
+ * xwayland: Clear the "xwl-window" tag on unrealize
+ * xwayland: correct the type for the discrete scroll events
+ * xkb: fix some possible memleaks in XkbGetKbdByName
+ * xkb: length-check XkbGetKbdByName before accessing the fields
+ * xkb: length-check XkbListComponents before accessing the fields
+ * xkb: proof GetCountedString against request length attacks
+- supersedes security patches:
+ * U_xkb-fix-some-possible-memleaks-in-XkbGetKbdByName.patch
+ * U_xkb-proof-GetCountedString-against-request-length-at.patch
+
+-------------------------------------------------------------------
Old:
----
U_xkb-fix-some-possible-memleaks-in-XkbGetKbdByName.patch
U_xkb-proof-GetCountedString-against-request-length-at.patch
xwayland-22.1.3.tar.xz
xwayland-22.1.3.tar.xz.sig
New:
----
U_Do-not-ignore-leave-events.patch
xwayland-22.1.4.tar.xz
xwayland-22.1.4.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xwayland.spec ++++++
--- /var/tmp/diff_new_pack.fwDWfQ/_old 2022-10-25 11:18:35.969949414 +0200
+++ /var/tmp/diff_new_pack.fwDWfQ/_new 2022-10-25 11:18:35.973949423 +0200
@@ -24,7 +24,7 @@
%endif
Name: xwayland
-Version: 22.1.3
+Version: 22.1.4
Release: 0
URL: http://xorg.freedesktop.org/
Summary: X
@@ -33,8 +33,7 @@
Source0: %{url}/archive/individual/xserver/%{name}-%{version}.tar.xz
Source1: %{url}/archive/individual/xserver/%{name}-%{version}.tar.xz.sig
Source2: xwayland.keyring
-Patch1204412: U_xkb-proof-GetCountedString-against-request-length-at.patch
-Patch1204416: U_xkb-fix-some-possible-memleaks-in-XkbGetKbdByName.patch
+Patch0: U_Do-not-ignore-leave-events.patch
BuildRequires: meson
BuildRequires: ninja
BuildRequires: pkgconfig
++++++ U_Do-not-ignore-leave-events.patch ++++++
From bd39c17e2398f82910978ed55ac772c67d8f940a Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan(a)redhat.com>
Date: Mon, 24 Oct 2022 09:24:01 +0200
Subject: [PATCH] xwayland/input: Do not ignore leave events
Commit 8a5f3ddb2 ("set tag on our surface") introduced the use of tags
to differentiate our own surfaces, and commit a1d14aa8c ("Clear the
"xwl-window" tag on unrealize") removed the tags before the surfaces are
actually destroyed.
Xwayland would then rely on these tags on the surface to decide whether
to ignore or to process the Wayland event in various places.
However, in doing so, it also checked for the tag on keyboard leave
events.
As a result, if the keyboard leave events is received after the X11
window is unrealized, keyboard_handle_leave() would not queue the
LeaveNotify events for the DIX to proceed, and the key repeat would
kick in and repeat the key event indefinitely.
To avoid the issue, process events regardless of the tag as before
in keyboard_handle_leave().
Signed-off-by: Olivier Fourdan <ofourdan(a)redhat.com>
Fixes: 8a5f3ddb2 - "xwayland: set tag on our surface"
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1395
---
hw/xwayland/xwayland-input.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/hw/xwayland/xwayland-input.c b/hw/xwayland/xwayland-input.c
index 240eb0139..9eda1ef71 100644
--- a/hw/xwayland/xwayland-input.c
+++ b/hw/xwayland/xwayland-input.c
@@ -1147,9 +1147,6 @@ keyboard_handle_leave(void *data, struct wl_keyboard *keyboard,
struct xwl_seat *xwl_seat = data;
uint32_t *k;
- if (surface != NULL && !is_surface_from_xwl_window(surface))
- return;
-
xwl_seat->xwl_screen->serial = serial;
wl_array_for_each(k, &xwl_seat->keys)
--
GitLab
++++++ xwayland-22.1.3.tar.xz -> xwayland-22.1.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/.gitlab-ci/debian-install.sh new/xwayland-22.1.4/.gitlab-ci/debian-install.sh
--- old/xwayland-22.1.3/.gitlab-ci/debian-install.sh 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/.gitlab-ci/debian-install.sh 2022-10-20 09:24:51.000000000 +0200
@@ -102,7 +102,7 @@
cd /root
# xserver requires libxcvt
-git clone https://gitlab.freedesktop.org/xorg/lib//libxcvt.git --depth 1 --branch=libxcvt-0.1.0
+git clone https://gitlab.freedesktop.org/xorg/lib/libxcvt.git --depth 1 --branch=libxcvt-0.1.0
cd libxcvt
meson _build
ninja -C _build -j${FDO_CI_CONCURRENT:-4} install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/dix/resource.c new/xwayland-22.1.4/dix/resource.c
--- old/xwayland-22.1.3/dix/resource.c 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/dix/resource.c 2022-10-20 09:24:51.000000000 +0200
@@ -620,12 +620,15 @@
unsigned int
ResourceClientBits(void)
{
- static unsigned int cached = 0;
+ static unsigned int cache_ilog2 = 0;
+ static unsigned int cache_limit = 0;
- if (cached == 0)
- cached = ilog2(LimitClients);
+ if (LimitClients != cache_limit) {
+ cache_limit = LimitClients;
+ cache_ilog2 = ilog2(LimitClients);
+ }
- return cached;
+ return cache_ilog2;
}
/*****************
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/dix/window.c new/xwayland-22.1.4/dix/window.c
--- old/xwayland-22.1.3/dix/window.c 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/dix/window.c 2022-10-20 09:24:51.000000000 +0200
@@ -3642,7 +3642,7 @@
if (!pWin)
return;
WasViewable = (Bool) (pWin->viewable);
- if (WasViewable) {
+ if (WasViewable && mode != ROOT_CLIP_INPUT_ONLY) {
for (pChild = pWin->firstChild; pChild; pChild = pChild->nextSib) {
(void) (*pScreen->MarkOverlappedWindows) (pChild,
pChild, &pLayerWin);
@@ -3696,7 +3696,7 @@
ResizeChildrenWinSize(pWin, 0, 0, 0, 0);
- if (WasViewable) {
+ if (WasViewable && mode != ROOT_CLIP_INPUT_ONLY) {
if (pWin->firstChild) {
anyMarked |= (*pScreen->MarkOverlappedWindows) (pWin->firstChild,
pWin->firstChild,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/hw/xwayland/xwayland-input.c new/xwayland-22.1.4/hw/xwayland/xwayland-input.c
--- old/xwayland-22.1.3/hw/xwayland/xwayland-input.c 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/hw/xwayland/xwayland-input.c 2022-10-20 09:24:51.000000000 +0200
@@ -50,12 +50,6 @@
#include "pointer-gestures-unstable-v1-client-protocol.h"
#include "xwayland-keyboard-grab-unstable-v1-client-protocol.h"
-struct axis_discrete_pending {
- struct xorg_list l;
- uint32_t axis;
- int32_t discrete;
-};
-
struct sync_pending {
struct xorg_list l;
DeviceIntPtr pending_dev;
@@ -473,6 +467,9 @@
if (surface == NULL)
return;
+ if (!is_surface_from_xwl_window(surface))
+ return;
+
xwl_seat->xwl_screen->serial = serial;
xwl_seat->pointer_enter_serial = serial;
@@ -611,6 +608,36 @@
}
static void
+dispatch_scroll_motion(struct xwl_seat *xwl_seat)
+{
+ ValuatorMask mask;
+ const int divisor = 10;
+ wl_fixed_t dy = xwl_seat->pending_pointer_event.scroll_dy;
+ wl_fixed_t dx = xwl_seat->pending_pointer_event.scroll_dx;
+ int32_t discrete_dy = xwl_seat->pending_pointer_event.scroll_discrete_dy;
+ int32_t discrete_dx = xwl_seat->pending_pointer_event.scroll_discrete_dx;
+
+ valuator_mask_zero(&mask);
+ if (xwl_seat->pending_pointer_event.has_vertical_scroll)
+ valuator_mask_set_double(&mask,
+ 3,
+ wl_fixed_to_double(dy) / divisor);
+ else if (xwl_seat->pending_pointer_event.has_vertical_scroll_discrete)
+ valuator_mask_set(&mask, 3, discrete_dy);
+
+ if (xwl_seat->pending_pointer_event.has_horizontal_scroll)
+ valuator_mask_set_double(&mask,
+ 2,
+ wl_fixed_to_double(dx) / divisor);
+ else if (xwl_seat->pending_pointer_event.has_horizontal_scroll_discrete)
+ valuator_mask_set(&mask, 2, discrete_dx);
+
+ QueuePointerEvents(get_pointer_device(xwl_seat),
+ MotionNotify, 0, POINTER_RELATIVE, &mask);
+}
+
+
+static void
dispatch_pointer_motion_event(struct xwl_seat *xwl_seat)
{
Bool has_relative = xwl_seat->pending_pointer_event.has_relative;
@@ -626,8 +653,18 @@
dispatch_absolute_motion(xwl_seat);
}
+ if (xwl_seat->pending_pointer_event.has_vertical_scroll ||
+ xwl_seat->pending_pointer_event.has_horizontal_scroll ||
+ xwl_seat->pending_pointer_event.has_vertical_scroll_discrete ||
+ xwl_seat->pending_pointer_event.has_horizontal_scroll_discrete)
+ dispatch_scroll_motion(xwl_seat);
+
xwl_seat->pending_pointer_event.has_absolute = FALSE;
xwl_seat->pending_pointer_event.has_relative = FALSE;
+ xwl_seat->pending_pointer_event.has_vertical_scroll = FALSE;
+ xwl_seat->pending_pointer_event.has_horizontal_scroll = FALSE;
+ xwl_seat->pending_pointer_event.has_vertical_scroll_discrete = FALSE;
+ xwl_seat->pending_pointer_event.has_horizontal_scroll_discrete = FALSE;
}
static void
@@ -684,42 +721,17 @@
uint32_t time, uint32_t axis, wl_fixed_t value)
{
struct xwl_seat *xwl_seat = data;
- int index;
- const int divisor = 10;
- ValuatorMask mask;
- struct axis_discrete_pending *pending = NULL;
- struct axis_discrete_pending *iter;
switch (axis) {
case WL_POINTER_AXIS_VERTICAL_SCROLL:
- index = 3;
+ xwl_seat->pending_pointer_event.has_vertical_scroll = TRUE;
+ xwl_seat->pending_pointer_event.scroll_dy = value;
break;
case WL_POINTER_AXIS_HORIZONTAL_SCROLL:
- index = 2;
+ xwl_seat->pending_pointer_event.has_horizontal_scroll = TRUE;
+ xwl_seat->pending_pointer_event.scroll_dx = value;
break;
- default:
- return;
- }
-
- xorg_list_for_each_entry(iter, &xwl_seat->axis_discrete_pending, l) {
- if (iter->axis == axis) {
- pending = iter;
- break;
- }
- }
-
- valuator_mask_zero(&mask);
-
- if (pending) {
- valuator_mask_set(&mask, index, pending->discrete);
- xorg_list_del(&pending->l);
- free(pending);
- } else {
- valuator_mask_set_double(&mask, index, wl_fixed_to_double(value) / divisor);
}
-
- QueuePointerEvents(get_pointer_device(xwl_seat),
- MotionNotify, 0, POINTER_RELATIVE, &mask);
}
static void
@@ -742,6 +754,18 @@
pointer_handle_axis_stop(void *data, struct wl_pointer *wl_pointer,
uint32_t time, uint32_t axis)
{
+ struct xwl_seat *xwl_seat = data;
+
+ switch (axis) {
+ case WL_POINTER_AXIS_VERTICAL_SCROLL:
+ xwl_seat->pending_pointer_event.has_vertical_scroll = TRUE;
+ xwl_seat->pending_pointer_event.scroll_dy = 0;
+ break;
+ case WL_POINTER_AXIS_HORIZONTAL_SCROLL:
+ xwl_seat->pending_pointer_event.has_horizontal_scroll = TRUE;
+ xwl_seat->pending_pointer_event.scroll_dx = 0;
+ break;
+ }
}
static void
@@ -750,14 +774,16 @@
{
struct xwl_seat *xwl_seat = data;
- struct axis_discrete_pending *pending = malloc(sizeof *pending);
- if (!pending)
- return;
-
- pending->axis = axis;
- pending->discrete = discrete;
-
- xorg_list_add(&pending->l, &xwl_seat->axis_discrete_pending);
+ switch (axis) {
+ case WL_POINTER_AXIS_VERTICAL_SCROLL:
+ xwl_seat->pending_pointer_event.has_vertical_scroll_discrete = TRUE;
+ xwl_seat->pending_pointer_event.scroll_discrete_dy = discrete;
+ break;
+ case WL_POINTER_AXIS_HORIZONTAL_SCROLL:
+ xwl_seat->pending_pointer_event.has_horizontal_scroll_discrete = TRUE;
+ xwl_seat->pending_pointer_event.scroll_discrete_dx = discrete;
+ break;
+ }
}
static const struct wl_pointer_listener pointer_listener = {
@@ -811,6 +837,9 @@
{
struct xwl_seat *xwl_seat = data;
+ if (surface != NULL && !is_surface_from_xwl_window(surface))
+ return;
+
xwl_seat->pointer_gesture_swipe_fingers = fingers;
QueueGestureSwipeEvents(xwl_seat->pointer_gestures,
XI_GestureSwipeBegin, fingers, 0, 0.0, 0.0, 0.0, 0.0);
@@ -870,6 +899,9 @@
{
struct xwl_seat *xwl_seat = data;
+ if (surface != NULL && !is_surface_from_xwl_window(surface))
+ return;
+
xwl_seat->pointer_gesture_pinch_fingers = fingers;
xwl_seat->pointer_gesture_pinch_last_scale = 1.0;
QueueGesturePinchEvents(xwl_seat->pointer_gestures,
@@ -1003,6 +1035,9 @@
struct xwl_seat *xwl_seat = data;
uint32_t *k;
+ if (surface != NULL && !is_surface_from_xwl_window(surface))
+ return;
+
xwl_seat->xwl_screen->serial = serial;
xwl_seat->keyboard_focus = surface;
@@ -1018,6 +1053,9 @@
struct xwl_seat *xwl_seat = data;
uint32_t *k;
+ if (surface != NULL && !is_surface_from_xwl_window(surface))
+ return;
+
xwl_seat->xwl_screen->serial = serial;
wl_array_for_each(k, &xwl_seat->keys)
@@ -1218,6 +1256,9 @@
if (surface == NULL)
return;
+ if (!is_surface_from_xwl_window(surface))
+ return;
+
xwl_touch = calloc(1, sizeof *xwl_touch);
if (xwl_touch == NULL) {
ErrorF("%s: ENOMEM\n", __func__);
@@ -1718,7 +1759,6 @@
wl_array_init(&xwl_seat->keys);
xorg_list_init(&xwl_seat->touches);
- xorg_list_init(&xwl_seat->axis_discrete_pending);
xorg_list_init(&xwl_seat->sync_pending);
}
@@ -1727,7 +1767,6 @@
{
struct xwl_touch *xwl_touch, *next_xwl_touch;
struct sync_pending *p, *npd;
- struct axis_discrete_pending *ad, *ad_next;
xorg_list_for_each_entry_safe(xwl_touch, next_xwl_touch,
&xwl_seat->touches, link_touch) {
@@ -1740,11 +1779,6 @@
free (p);
}
- xorg_list_for_each_entry_safe(ad, ad_next, &xwl_seat->axis_discrete_pending, l) {
- xorg_list_del(&ad->l);
- free(ad);
- }
-
release_tablet_manager_seat(xwl_seat);
release_grab(xwl_seat);
@@ -1901,6 +1935,9 @@
if (wl_surface == NULL)
return;
+ if (!is_surface_from_xwl_window(wl_surface))
+ return;
+
xwl_tablet_tool->proximity_in_serial = serial;
xwl_seat->tablet_focus_window = wl_surface_get_user_data(wl_surface);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/hw/xwayland/xwayland-input.h new/xwayland-22.1.4/hw/xwayland/xwayland-input.h
--- old/xwayland-22.1.3/hw/xwayland/xwayland-input.h 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/hw/xwayland/xwayland-input.h 2022-10-20 09:24:51.000000000 +0200
@@ -93,7 +93,6 @@
char *keymap;
struct wl_surface *keyboard_focus;
- struct xorg_list axis_discrete_pending;
struct xorg_list sync_pending;
struct xwl_pointer_warp_emulator *pointer_warp_emulator;
@@ -111,6 +110,15 @@
double dy;
double dx_unaccel;
double dy_unaccel;
+
+ wl_fixed_t scroll_dy;
+ wl_fixed_t scroll_dx;
+ int32_t scroll_discrete_dy;
+ int32_t scroll_discrete_dx;
+ Bool has_vertical_scroll;
+ Bool has_horizontal_scroll;
+ Bool has_vertical_scroll_discrete;
+ Bool has_horizontal_scroll_discrete;
} pending_pointer_event;
struct xorg_list tablets;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/hw/xwayland/xwayland-screen.c new/xwayland-22.1.4/hw/xwayland/xwayland-screen.c
--- old/xwayland-22.1.3/hw/xwayland/xwayland-screen.c 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/hw/xwayland/xwayland-screen.c 2022-10-20 09:24:51.000000000 +0200
@@ -173,6 +173,7 @@
struct xwl_screen *xwl_screen = xwl_screen_get(screen);
struct xwl_output *xwl_output, *next_xwl_output;
struct xwl_seat *xwl_seat, *next_xwl_seat;
+ struct xwl_wl_surface *xwl_wl_surface, *xwl_wl_surface_next;
DeleteCallback(&PropertyStateCallback, xwl_property_callback, screen);
@@ -192,6 +193,10 @@
xwl_screen_destroy_drm_lease_device(xwl_screen,
device_data->drm_lease_device);
+ xorg_list_for_each_entry_safe(xwl_wl_surface, xwl_wl_surface_next,
+ &xwl_screen->pending_wl_surface_destroy, link)
+ xwl_window_surface_do_destroy(xwl_wl_surface);
+
RemoveNotifyFd(xwl_screen->wayland_fd);
wl_display_disconnect(xwl_screen->display);
@@ -580,6 +585,53 @@
xwl_give_up("could not connect to wayland server\n");
}
+static int
+xwl_server_grab(ClientPtr client)
+{
+ struct xwl_screen *xwl_screen;
+
+ /* Allow GrabServer for the X11 window manager.
+ * Xwayland only has 1 screen (no Zaphod for Xwayland) so we check
+ * for the first and only screen here.
+ */
+ xwl_screen = xwl_screen_get(screenInfo.screens[0]);
+ if (xwl_screen->wm_client_id == client->index)
+ return xwl_screen->GrabServer(client);
+
+ /* For all other clients, just pretend it works for compatibility,
+ but do nothing */
+ return Success;
+}
+
+static int
+xwl_server_ungrab(ClientPtr client)
+{
+ struct xwl_screen *xwl_screen;
+
+ /* Same as above, allow UngrabServer for the X11 window manager only */
+ xwl_screen = xwl_screen_get(screenInfo.screens[0]);
+ if (xwl_screen->wm_client_id == client->index)
+ return xwl_screen->UngrabServer(client);
+
+ /* For all other clients, just pretend it works for compatibility,
+ but do nothing */
+ return Success;
+}
+
+static void
+xwl_screen_setup_custom_vector(struct xwl_screen *xwl_screen)
+{
+ /* Rootfull Xwayland does not need a custom ProcVector (yet?) */
+ if (!xwl_screen->rootless)
+ return;
+
+ xwl_screen->GrabServer = ProcVector[X_GrabServer];
+ xwl_screen->UngrabServer = ProcVector[X_UngrabServer];
+
+ ProcVector[X_GrabServer] = xwl_server_grab;
+ ProcVector[X_UngrabServer] = xwl_server_ungrab;
+}
+
Bool
xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
{
@@ -664,6 +716,7 @@
xorg_list_init(&xwl_screen->drm_lease_devices);
xorg_list_init(&xwl_screen->queued_drm_lease_devices);
xorg_list_init(&xwl_screen->drm_leases);
+ xorg_list_init(&xwl_screen->pending_wl_surface_destroy);
xwl_screen->depth = 24;
if (!monitorResolution)
@@ -791,6 +844,8 @@
AddCallback(&PropertyStateCallback, xwl_property_callback, pScreen);
AddCallback(&RootWindowFinalizeCallback, xwl_root_window_finalized_callback, pScreen);
+ xwl_screen_setup_custom_vector(xwl_screen);
+
xwl_screen_roundtrip(xwl_screen);
return ret;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/hw/xwayland/xwayland-screen.h new/xwayland-22.1.4/hw/xwayland/xwayland-screen.h
--- old/xwayland-22.1.3/hw/xwayland/xwayland-screen.h 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/hw/xwayland/xwayland-screen.h 2022-10-20 09:24:51.000000000 +0200
@@ -68,6 +68,9 @@
ResizeWindowProcPtr ResizeWindow;
MoveWindowProcPtr MoveWindow;
+ int (*GrabServer) (ClientPtr client);
+ int (*UngrabServer) (ClientPtr client);
+
struct xorg_list output_list;
struct xorg_list seat_list;
struct xorg_list damage_window_list;
@@ -91,6 +94,7 @@
struct xorg_list drm_lease_devices;
struct xorg_list queued_drm_lease_devices;
struct xorg_list drm_leases;
+ struct xorg_list pending_wl_surface_destroy;
uint32_t serial;
#define XWL_FORMAT_ARGB8888 (1 << 0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/hw/xwayland/xwayland-window.c new/xwayland-22.1.4/hw/xwayland/xwayland-window.c
--- old/xwayland-22.1.3/hw/xwayland/xwayland-window.c 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/hw/xwayland/xwayland-window.c 2022-10-20 09:24:51.000000000 +0200
@@ -46,8 +46,11 @@
#include "viewporter-client-protocol.h"
#include "xdg-shell-client-protocol.h"
+#define DELAYED_WL_SURFACE_DESTROY 1000 /* ms */
+
static DevPrivateKeyRec xwl_window_private_key;
static DevPrivateKeyRec xwl_damage_private_key;
+static const char *xwl_surface_tag = "xwl-surface";
static void
xwl_window_set_allow_commits(struct xwl_window *xwl_window, Bool allow,
@@ -112,6 +115,24 @@
return NULL;
}
+static void
+xwl_window_set_xwayland_tag(struct xwl_window *xwl_window)
+{
+ wl_proxy_set_tag((struct wl_proxy *)xwl_window->surface, &xwl_surface_tag);
+}
+
+static void
+xwl_window_clear_xwayland_tag(struct xwl_window *xwl_window)
+{
+ wl_proxy_set_tag((struct wl_proxy *)xwl_window->surface, NULL);
+}
+
+Bool
+is_surface_from_xwl_window(struct wl_surface *surface)
+{
+ return wl_proxy_get_tag((struct wl_proxy *) surface) == &xwl_surface_tag;
+}
+
void
xwl_window_update_property(struct xwl_window *xwl_window,
PropertyStateRec *propstate)
@@ -480,6 +501,7 @@
send_surface_id_event(xwl_window);
wl_surface_set_user_data(xwl_window->surface, xwl_window);
+ xwl_window_set_xwayland_tag(xwl_window);
compRedirectWindow(serverClient, window, CompositeRedirectManual);
@@ -563,6 +585,62 @@
return ensure_surface_for_window(window);
}
+static void
+xwl_surface_destroy_free_timer(struct xwl_wl_surface *xwl_wl_surface)
+{
+ if (xwl_wl_surface->wl_surface_destroy_timer) {
+ TimerFree(xwl_wl_surface->wl_surface_destroy_timer);
+ xwl_wl_surface->wl_surface_destroy_timer = NULL;
+ }
+}
+
+void
+xwl_window_surface_do_destroy(struct xwl_wl_surface *xwl_wl_surface)
+{
+ wl_surface_destroy(xwl_wl_surface->wl_surface);
+ xorg_list_del(&xwl_wl_surface->link);
+ xwl_surface_destroy_free_timer(xwl_wl_surface);
+ free(xwl_wl_surface);
+}
+
+static CARD32
+xwl_surface_destroy_callback(OsTimerPtr timer, CARD32 now, void *arg)
+{
+ struct xwl_wl_surface *xwl_wl_surface = arg;
+
+ xwl_window_surface_do_destroy(xwl_wl_surface);
+
+ return 0;
+}
+
+static void
+release_wl_surface_for_window(struct xwl_window *xwl_window)
+{
+ struct xwl_wl_surface *xwl_wl_surface;
+
+ /* If the Xserver is terminating, destroy the surface immediately */
+ if ((dispatchException & DE_TERMINATE) == DE_TERMINATE) {
+ wl_surface_destroy(xwl_window->surface);
+ return;
+ }
+
+ /* Break the wl_surface / xwl_window relationship */
+ wl_surface_set_user_data(xwl_window->surface, NULL);
+ xwl_window_clear_xwayland_tag(xwl_window);
+
+ /* Schedule the destruction later, to mitigate the race between X11
+ * and Wayland processing so that the compositor has the time to
+ * establish the association before the wl_surface is destroyed.
+ */
+ xwl_wl_surface = xnfcalloc(1, sizeof *xwl_wl_surface);
+ xwl_wl_surface->wl_surface = xwl_window->surface;
+ xorg_list_add(&xwl_wl_surface->link,
+ &xwl_window->xwl_screen->pending_wl_surface_destroy);
+ xwl_wl_surface->wl_surface_destroy_timer =
+ TimerSet(NULL, 0, DELAYED_WL_SURFACE_DESTROY,
+ xwl_surface_destroy_callback, xwl_wl_surface);
+}
+
Bool
xwl_unrealize_window(WindowPtr window)
{
@@ -617,7 +695,7 @@
}
#endif
- wl_surface_destroy(xwl_window->surface);
+ release_wl_surface_for_window(xwl_window);
xorg_list_del(&xwl_window->link_damage);
xorg_list_del(&xwl_window->link_window);
unregister_damage(window);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/hw/xwayland/xwayland-window.h new/xwayland-22.1.4/hw/xwayland/xwayland-window.h
--- old/xwayland-22.1.3/hw/xwayland/xwayland-window.h 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/hw/xwayland/xwayland-window.h 2022-10-20 09:24:51.000000000 +0200
@@ -37,6 +37,12 @@
#include "xwayland-types.h"
+struct xwl_wl_surface {
+ OsTimerPtr wl_surface_destroy_timer;
+ struct wl_surface *wl_surface;
+ struct xorg_list link;
+};
+
struct xwl_window {
struct xwl_screen *xwl_screen;
struct wl_surface *surface;
@@ -60,6 +66,8 @@
struct xwl_window *xwl_window_get(WindowPtr window);
struct xwl_window *xwl_window_from_window(WindowPtr window);
+Bool is_surface_from_xwl_window(struct wl_surface *surface);
+
void xwl_window_update_property(struct xwl_window *xwl_window,
PropertyStateRec *propstate);
Bool xwl_window_has_viewport_enabled(struct xwl_window *xwl_window);
@@ -81,6 +89,8 @@
Bool xwl_destroy_window(WindowPtr window);
void xwl_window_post_damage(struct xwl_window *xwl_window);
void xwl_window_create_frame_callback(struct xwl_window *xwl_window);
+void xwl_window_surface_do_destroy(struct xwl_wl_surface *xwl_wl_surface);
+
Bool xwl_window_init(void);
#endif /* XWAYLAND_WINDOW_H */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/meson.build new/xwayland-22.1.4/meson.build
--- old/xwayland-22.1.3/meson.build 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/meson.build 2022-10-20 09:24:51.000000000 +0200
@@ -3,7 +3,7 @@
'buildtype=debugoptimized',
'c_std=gnu99',
],
- version: '22.1.3',
+ version: '22.1.4',
meson_version: '>= 0.47.0',
)
release_date = '2021-07-05'
@@ -63,7 +63,7 @@
libdrm_req = '>= 2.4.89'
libselinux_req = '>= 2.0.86'
xext_req = '>= 1.0.99.4'
-wayland_req = '>= 1.5.0'
+wayland_req = '>= 1.18.0'
wayland_protocols_req = '>= 1.22'
gbm_req = '>= 10.2'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xwayland-22.1.3/xkb/xkb.c new/xwayland-22.1.4/xkb/xkb.c
--- old/xwayland-22.1.3/xkb/xkb.c 2022-07-12 15:48:31.000000000 +0200
+++ new/xwayland-22.1.4/xkb/xkb.c 2022-10-20 09:24:51.000000000 +0200
@@ -5138,6 +5138,11 @@
CARD16 len;
wire = *wire_inout;
+
+ if (client->req_len <
+ bytes_to_int32(wire + 2 - (char *) client->requestBuffer))
+ return BadValue;
+
len = *(CARD16 *) wire;
if (client->swapped) {
swaps(&len);
@@ -5795,7 +5800,8 @@
};
static char *
-GetComponentSpec(unsigned char **pWire, Bool allowExpr, int *errRtrn)
+GetComponentSpec(ClientPtr client, xkbGetKbdByNameReq *stuff,
+ unsigned char **pWire, Bool allowExpr, int *errRtrn)
{
int len;
register int i;
@@ -5807,8 +5813,16 @@
legal = &componentSpecLegal[0];
wire = *pWire;
+ if (!_XkbCheckRequestBounds(client, stuff, wire, wire + 1)) {
+ *errRtrn = BadLength;
+ return NULL;
+ }
len = (*(unsigned char *) wire++);
if (len > 0) {
+ if (!_XkbCheckRequestBounds(client, stuff, wire, wire + len)) {
+ *errRtrn = BadLength;
+ return NULL;
+ }
str = calloc(1, len + 1);
if (str) {
tmp = str;
@@ -5862,6 +5876,8 @@
* length wrong. */
str = (unsigned char *) &stuff[1];
for (i = 0; i < 6; i++) {
+ if (!_XkbCheckRequestBounds(client, stuff, str, str + 1))
+ return BadLength;
size = *((uint8_t *)str);
len = (str + size + 1) - ((unsigned char *) stuff);
if ((XkbPaddedSize(len) / 4) > stuff->length)
@@ -5936,18 +5952,32 @@
xkb = dev->key->xkbInfo->desc;
status = Success;
str = (unsigned char *) &stuff[1];
- if (GetComponentSpec(&str, TRUE, &status)) /* keymap, unsupported */
- return BadMatch;
- names.keycodes = GetComponentSpec(&str, TRUE, &status);
- names.types = GetComponentSpec(&str, TRUE, &status);
- names.compat = GetComponentSpec(&str, TRUE, &status);
- names.symbols = GetComponentSpec(&str, TRUE, &status);
- names.geometry = GetComponentSpec(&str, TRUE, &status);
- if (status != Success)
+ {
+ char *keymap = GetComponentSpec(client, stuff, &str, TRUE, &status); /* keymap, unsupported */
+ if (keymap) {
+ free(keymap);
+ return BadMatch;
+ }
+ }
+ names.keycodes = GetComponentSpec(client, stuff, &str, TRUE, &status);
+ names.types = GetComponentSpec(client, stuff, &str, TRUE, &status);
+ names.compat = GetComponentSpec(client, stuff, &str, TRUE, &status);
+ names.symbols = GetComponentSpec(client, stuff, &str, TRUE, &status);
+ names.geometry = GetComponentSpec(client, stuff, &str, TRUE, &status);
+ if (status == Success) {
+ len = str - ((unsigned char *) stuff);
+ if ((XkbPaddedSize(len) / 4) != stuff->length)
+ status = BadLength;
+ }
+
+ if (status != Success) {
+ free(names.keycodes);
+ free(names.types);
+ free(names.compat);
+ free(names.symbols);
+ free(names.geometry);
return status;
- len = str - ((unsigned char *) stuff);
- if ((XkbPaddedSize(len) / 4) != stuff->length)
- return BadLength;
+ }
CHK_MASK_LEGAL(0x01, stuff->want, XkbGBN_AllComponentsMask);
CHK_MASK_LEGAL(0x02, stuff->need, XkbGBN_AllComponentsMask);
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package eog for openSUSE:Factory checked in at 2022-10-25 11:18:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/eog (Old)
and /work/SRC/openSUSE:Factory/.eog.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "eog"
Tue Oct 25 11:18:28 2022 rev:159 rq:1030880 version:43.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/eog/eog.changes 2022-09-21 14:40:43.921472007 +0200
+++ /work/SRC/openSUSE:Factory/.eog.new.2275/eog.changes 2022-10-25 11:18:33.365943642 +0200
@@ -1,0 +2,8 @@
+Mon Oct 24 09:12:01 UTC 2022 - Bj��rn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 43.1:
+ + desktop: Remove obsolete Bugzilla entries
+ + Add Swedish help images.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
eog-43.0.tar.xz
New:
----
eog-43.1.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ eog.spec ++++++
--- /var/tmp/diff_new_pack.Xh0k0S/_old 2022-10-25 11:18:33.861944741 +0200
+++ /var/tmp/diff_new_pack.Xh0k0S/_new 2022-10-25 11:18:33.865944750 +0200
@@ -17,7 +17,7 @@
Name: eog
-Version: 43.0
+Version: 43.1
Release: 0
Summary: Image Viewer for GNOME
License: GPL-2.0-or-later AND LGPL-2.1-or-later
++++++ eog-43.0.tar.xz -> eog-43.1.tar.xz ++++++
++++ 4893 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-psutil for openSUSE:Factory checked in at 2022-10-25 11:18:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-psutil (Old)
and /work/SRC/openSUSE:Factory/.python-psutil.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-psutil"
Tue Oct 25 11:18:27 2022 rev:69 rq:1030870 version:5.9.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-psutil/python-psutil.changes 2022-09-15 22:57:59.525012397 +0200
+++ /work/SRC/openSUSE:Factory/.python-psutil.new.2275/python-psutil.changes 2022-10-25 11:18:32.217941098 +0200
@@ -1,0 +2,24 @@
+Sat Oct 22 16:23:10 UTC 2022 - Arun Persaud <arun(a)gmx.de>
+
+- update to version 5.9.3:
+ * Enhancements
+ + 2040, [macOS]: provide wheels for arm64 architecture. (patch by
+ Matthieu Darbois)
+ * Bug fixes
+ + 2116, [macOS], [critical]: `psutil.net_connections`_ fails with
+ RuntimeError.
+ + 2135, [macOS]: Process.environ() may contain garbage data. Fix
+ out-of-bounds read around sysctl_procargs. (patch by Bernhard
+ Urban-Forster)
+ + 2138, [Linux], [critical]: can't compile psutil on Android due
+ to undefined ethtool_cmd_speed symbol.
+ + 2142, [POSIX]: net_if_stats() 's flags on Python 2 returned
+ unicode instead of str. (patch by Matthieu Darbois)
+ + 2147, [macOS] Fix disk usage report on macOS 12+. (patch by
+ Matthieu Darbois)
+ + 2150, [Linux] Process.threads() may raise NoSuchProcess. Fix
+ race condition. (patch by Daniel Li)
+ + 2153, [macOS] Fix race condition in
+ test_posix.TestProcess.test_cmdline. (patch by Matthieu Darbois)
+
+-------------------------------------------------------------------
Old:
----
psutil-5.9.2.tar.gz
New:
----
psutil-5.9.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-psutil.spec ++++++
--- /var/tmp/diff_new_pack.zeiHXu/_old 2022-10-25 11:18:32.809942409 +0200
+++ /var/tmp/diff_new_pack.zeiHXu/_new 2022-10-25 11:18:32.829942454 +0200
@@ -24,7 +24,7 @@
%endif
%bcond_without python2
Name: python-psutil
-Version: 5.9.2
+Version: 5.9.3
Release: 0
Summary: A process utilities module for Python
License: BSD-3-Clause
++++++ psutil-5.9.2.tar.gz -> psutil-5.9.3.tar.gz ++++++
++++ 1708 lines of diff (skipped)
1
0