public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Diego Herrera <dherrera@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/obs-studio] rawhide: Update to 32.2.2
Date: Fri, 04 Sep 2026 17:43:13 GMT	[thread overview]
Message-ID: <178854379347.1.13720128836626275315.rpms-obs-studio-811c6f337488@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/obs-studio
Branch : rawhide
Commit : 811c6f3374887aa69d24f553c595ecbbfe53049b
Author : Diego Herrera <dherrera@redhat.com>
Date   : 2026-09-04T13:19:48-04:00
Stats  : +123/-197 in 9 file(s)
URL    : https://src.fedoraproject.org/rpms/obs-studio/c/811c6f3374887aa69d24f553c595ecbbfe53049b?branch=rawhide

Log:
Update to 32.2.2

---
diff --git a/0101-frontend-Consider-settings-changed-if-an-output-sett.patch b/0101-frontend-Consider-settings-changed-if-an-output-sett.patch
index 3d1ef40..6811e06 100644
--- a/0101-frontend-Consider-settings-changed-if-an-output-sett.patch
+++ b/0101-frontend-Consider-settings-changed-if-an-output-sett.patch
@@ -12,48 +12,44 @@ value, since you can never trigger the "changed" status).
 If the settings load process clamped any setting to the default, enable
 the apply button and consider the setting changed.
 ---
- frontend/settings/OBSBasicSettings.cpp | 28 +++++++++++++++++++++++---
- 1 file changed, 25 insertions(+), 3 deletions(-)
+ frontend/settings/OBSBasicSettings.cpp | 19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
 
 diff --git a/frontend/settings/OBSBasicSettings.cpp b/frontend/settings/OBSBasicSettings.cpp
-index 6e47f93ac924..98998f3605cf 100644
+index cace1de59..0a5639359 100644
 --- a/frontend/settings/OBSBasicSettings.cpp
 +++ b/frontend/settings/OBSBasicSettings.cpp
-@@ -1753,19 +1753,30 @@ void OBSBasicSettings::LoadSimpleOutputSettings()
+@@ -1813,21 +1813,29 @@ void OBSBasicSettings::LoadSimpleOutputSettings()
  	ui->simpleOutAdvanced->setChecked(advanced);
  	ui->simpleOutCustom->setText(custom);
  
 +	bool outputSettingReset = false;
 +
  	idx = ui->simpleOutRecQuality->findData(QString(recQual));
--	if (idx == -1)
-+	if (idx == -1) {
+	if (idx == -1) {
 +		ui->simpleOutRecQuality->setProperty("changed", QVariant(true));
  		idx = 0;
 +		outputSettingReset = true;
-+	}
+	}
  	ui->simpleOutRecQuality->setCurrentIndex(idx);
  
  	idx = ui->simpleOutStrEncoder->findData(QString(streamEnc));
--	if (idx == -1)
-+	if (idx == -1) {
+	if (idx == -1) {
 +		ui->simpleOutStrEncoder->setProperty("changed", QVariant(true));
  		idx = 0;
 +		outputSettingReset = true;
-+	}
+	}
  	ui->simpleOutStrEncoder->setCurrentIndex(idx);
  
  	idx = ui->simpleOutStrAEncoder->findData(QString(streamAudioEnc));
--	if (idx == -1)
-+	if (idx == -1) {
+	if (idx == -1) {
 +		ui->simpleOutStrAEncoder->setProperty("changed", QVariant(true));
  		idx = 0;
 +		outputSettingReset = true;
-+	}
+	}
  	ui->simpleOutStrAEncoder->setCurrentIndex(idx);
  
- 	idx = ui->simpleOutRecEncoder->findData(QString(recEnc));
-@@ -1781,6 +1792,10 @@ void OBSBasicSettings::LoadSimpleOutputSettings()
+@@ -1844,6 +1852,10 @@ void OBSBasicSettings::LoadSimpleOutputSettings()
  	ui->simpleRBMegsMax->setValue(rbSize);
  
  	SimpleStreamingEncoderChanged();
@@ -64,7 +60,7 @@ index 6e47f93ac924..98998f3605cf 100644
  }
  
  static inline QString makeFormatToolTip()
-@@ -1921,6 +1936,10 @@ void OBSBasicSettings::LoadAdvOutputStreamingEncoderProperties()
+@@ -1986,6 +1998,10 @@ void OBSBasicSettings::LoadAdvOutputStreamingEncoderProperties()
  
  			ui->advOutEncoder->insertItem(0, encName, QT_UTF8(type));
  			SetComboByValue(ui->advOutEncoder, type);
@@ -75,7 +71,7 @@ index 6e47f93ac924..98998f3605cf 100644
  		}
  	}
  
-@@ -2027,6 +2046,9 @@ void OBSBasicSettings::LoadAdvOutputRecordingEncoderProperties()
+@@ -2095,6 +2111,9 @@ void OBSBasicSettings::LoadAdvOutputRecordingEncoderProperties()
  			SetComboByValue(ui->advOutRecEncoder, type);
  		} else {
  			ui->advOutRecEncoder->setCurrentIndex(-1);
@@ -86,5 +82,5 @@ index 6e47f93ac924..98998f3605cf 100644
  	}
  }
 -- 
-2.51.0
+2.55.0
 

diff --git a/0102-frontend-Allow-invalid-recording-encoder-if-quality-.patch b/0102-frontend-Allow-invalid-recording-encoder-if-quality-.patch
index 224dbde..17c4b4a 100644
--- a/0102-frontend-Allow-invalid-recording-encoder-if-quality-.patch
+++ b/0102-frontend-Allow-invalid-recording-encoder-if-quality-.patch
@@ -12,30 +12,30 @@ it's relevant.
  1 file changed, 5 insertions(+), 2 deletions(-)
 
 diff --git a/frontend/settings/OBSBasicSettings.cpp b/frontend/settings/OBSBasicSettings.cpp
-index 98998f3605cf..fdda9282f511 100644
+index 0a5639359..cb102f4a9 100644
 --- a/frontend/settings/OBSBasicSettings.cpp
 +++ b/frontend/settings/OBSBasicSettings.cpp
-@@ -3739,8 +3739,7 @@ bool OBSBasicSettings::QueryAllowedToClose()
+@@ -3905,8 +3905,7 @@ bool OBSBasicSettings::QueryAllowedToClose()
  	bool invalidFormat = false;
  	bool invalidTracks = false;
  	if (simple) {
 -		if (ui->simpleOutRecEncoder->currentIndex() == -1 || ui->simpleOutStrEncoder->currentIndex() == -1 ||
--		    ui->simpleOutRecAEncoder->currentIndex() == -1 || ui->simpleOutStrAEncoder->currentIndex() == -1)
-+		if (ui->simpleOutStrEncoder->currentIndex() == -1 || ui->simpleOutStrAEncoder->currentIndex() == -1)
+-		    ui->simpleOutRecAEncoder->currentIndex() == -1 || ui->simpleOutStrAEncoder->currentIndex() == -1) {
++		if (ui->simpleOutStrEncoder->currentIndex() == -1 || ui->simpleOutStrAEncoder->currentIndex() == -1) {
  			invalidEncoder = true;
- 
- 		if (ui->simpleOutRecFormat->currentIndex() == -1)
-@@ -3750,6 +3749,10 @@ bool OBSBasicSettings::QueryAllowedToClose()
- 		QString format = ui->simpleOutRecFormat->currentData().toString();
- 		if (SimpleOutGetSelectedAudioTracks() == 0 && qual != "Stream" && format != "flv")
+ 		}
+
+@@ -3919,6 +3918,10 @@ bool OBSBasicSettings::QueryAllowedToClose()
+ 		if (SimpleOutGetSelectedAudioTracks() == 0 && qual != "Stream" && format != "flv") {
  			invalidTracks = true;
+ 		}
 +
 +		if (qual != "Stream" &&
 +		    (ui->simpleOutRecEncoder->currentIndex() == -1 || ui->simpleOutRecAEncoder->currentIndex() == -1))
 +			invalidEncoder = true;
  	} else {
  		if (ui->advOutRecEncoder->currentIndex() == -1 || ui->advOutEncoder->currentIndex() == -1 ||
- 		    ui->advOutRecAEncoder->currentIndex() == -1 || ui->advOutAEncoder->currentIndex() == -1)
+ 		    ui->advOutRecAEncoder->currentIndex() == -1 || ui->advOutAEncoder->currentIndex() == -1) {
 -- 
-2.51.0
+2.55.0
 

diff --git a/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch b/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch
index dd39748..37e2351 100644
--- a/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch
+++ b/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch
@@ -20,10 +20,10 @@ available.
  10 files changed, 105 insertions(+), 40 deletions(-)
 
 diff --git a/frontend/data/locale/en-US.ini b/frontend/data/locale/en-US.ini
-index 908af15890c5..73ce7b3762dc 100644
+index b5cc6384c..5f810c80a 100644
 --- a/frontend/data/locale/en-US.ini
 +++ b/frontend/data/locale/en-US.ini
-@@ -1065,6 +1065,7 @@ Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates
+@@ -1086,6 +1086,7 @@ Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates
  Basic.Settings.Output.Simple.Warn.Lossless.Msg="Are you sure you want to use lossless quality?"
  Basic.Settings.Output.Simple.Warn.Lossless.Title="Lossless quality warning!"
  Basic.Settings.Output.Simple.Encoder.Software="Software (x264)"
@@ -32,22 +32,22 @@ index 908af15890c5..73ce7b3762dc 100644
  Basic.Settings.Output.Simple.Encoder.Hardware.QSV.AV1="Hardware (QSV, AV1)"
  Basic.Settings.Output.Simple.Encoder.Hardware.AMD.H264="Hardware (AMD, H.264)"
 diff --git a/frontend/settings/OBSBasicSettings.cpp b/frontend/settings/OBSBasicSettings.cpp
-index fdda9282f511..575912a439b5 100644
+index cb102f4a9..e048ec6e0 100644
 --- a/frontend/settings/OBSBasicSettings.cpp
 +++ b/frontend/settings/OBSBasicSettings.cpp
-@@ -3385,6 +3385,11 @@ void OBSBasicSettings::SaveOutputSettings()
+@@ -3520,6 +3520,11 @@ void OBSBasicSettings::SaveOutputSettings()
           do. This only exists to make sure that the x264 preset doesn't
           get overwritten with empty data. */
  		presetType = "ApplePreset";
 +	else if (encoder == SIMPLE_ENCODER_OPENH264)
 +		/* The OpenH264 encoder does not have presets like the other encoders
-+         do. This only exists to make sure that the x264 preset doesn't
-+         get overwritten with empty data. */
++		 do. This only exists to make sure that the x264 preset doesn't
++		 get overwritten with empty data. */
 +		presetType = "OpenH264Preset";
- 	else
+ 	else {
  		presetType = "Preset";
- 
-@@ -4759,8 +4764,11 @@ void OBSBasicSettings::FillSimpleRecordingValues()
+ 	}
+@@ -4973,8 +4978,11 @@ void OBSBasicSettings::FillSimpleRecordingValues()
  	ADD_QUALITY("HQ");
  	ADD_QUALITY("Lossless");
  
@@ -58,10 +58,10 @@ index fdda9282f511..575912a439b5 100644
 +		ui->simpleOutRecEncoder->addItem(ENCODER_STR("Software"), QString(SIMPLE_ENCODER_X264));
 +		ui->simpleOutRecEncoder->addItem(ENCODER_STR("SoftwareLowCPU"), QString(SIMPLE_ENCODER_X264_LOWCPU));
 +	}
- 	if (EncoderAvailable("obs_qsv11"))
+ 	if (EncoderAvailable("obs_qsv11")) {
  		ui->simpleOutRecEncoder->addItem(ENCODER_STR("Hardware.QSV.H264"), QString(SIMPLE_ENCODER_QSV));
- 	if (EncoderAvailable("obs_qsv11_av1"))
-@@ -4909,6 +4917,9 @@ void OBSBasicSettings::SimpleStreamingEncoderChanged()
+ 	}
+@@ -5131,6 +5139,9 @@ void OBSBasicSettings::SimpleStreamingEncoderChanged()
  
  		defaultPreset = "balanced";
  		preset = curAMDAV1Preset;
@@ -72,13 +72,13 @@ index fdda9282f511..575912a439b5 100644
  
  #define PRESET_STR(val) QString(Str("Basic.Settings.Output.EncoderPreset." val)).arg(val)
 diff --git a/frontend/settings/OBSBasicSettings_Stream.cpp b/frontend/settings/OBSBasicSettings_Stream.cpp
-index ce74a1cb1bab..74bc9cbcccb2 100644
+index 2217ccdb5..198ea78de 100644
 --- a/frontend/settings/OBSBasicSettings_Stream.cpp
 +++ b/frontend/settings/OBSBasicSettings_Stream.cpp
-@@ -1471,7 +1471,9 @@ static QString get_adv_fallback(const QString &enc)
- 		return "com.apple.videotoolbox.videoencoder.ave.avc";
- 	if (enc == "obs_qsv11_av1")
+@@ -1529,7 +1529,9 @@ static QString get_adv_fallback(const QString &enc)
+ 	if (enc == "obs_qsv11_av1") {
  		return "obs_qsv11";
+ 	}
 -	return "obs_x264";
 +	if (EncoderAvailable("obs_x264"))
 +		return "obs_x264";
@@ -86,10 +86,10 @@ index ce74a1cb1bab..74bc9cbcccb2 100644
  }
  
  static QString get_adv_audio_fallback(const QString &enc)
-@@ -1500,7 +1502,9 @@ static QString get_simple_fallback(const QString &enc)
- 		return SIMPLE_ENCODER_APPLE_H264;
- 	if (enc == SIMPLE_ENCODER_QSV_AV1)
+@@ -1564,7 +1566,9 @@ static QString get_simple_fallback(const QString &enc)
+ 	if (enc == SIMPLE_ENCODER_QSV_AV1) {
  		return SIMPLE_ENCODER_QSV;
+ 	}
 -	return SIMPLE_ENCODER_X264;
 +	if (EncoderAvailable("obs_x264"))
 +		return SIMPLE_ENCODER_X264;
@@ -97,7 +97,7 @@ index ce74a1cb1bab..74bc9cbcccb2 100644
  }
  
  bool OBSBasicSettings::ServiceSupportsCodecCheck()
-@@ -1675,7 +1679,9 @@ void OBSBasicSettings::ResetEncoders(bool streamOnly)
+@@ -1748,7 +1752,9 @@ void OBSBasicSettings::ResetEncoders(bool streamOnly)
  
  #define ENCODER_STR(str) QTStr("Basic.Settings.Output.Simple.Encoder." str)
  
@@ -106,13 +106,13 @@ index ce74a1cb1bab..74bc9cbcccb2 100644
 +	if (service_supports_encoder(vcodecs, "obs_x264"))
 +		ui->simpleOutStrEncoder->addItem(ENCODER_STR("Software"), QString(SIMPLE_ENCODER_X264));
  #ifdef _WIN32
- 	if (service_supports_encoder(vcodecs, "obs_qsv11"))
+ 	if (service_supports_encoder(vcodecs, "obs_qsv11")) {
  		ui->simpleOutStrEncoder->addItem(ENCODER_STR("Hardware.QSV.H264"), QString(SIMPLE_ENCODER_QSV));
 diff --git a/frontend/utility/SimpleOutput.cpp b/frontend/utility/SimpleOutput.cpp
-index d594b9987f4b..54ba20f89a8d 100644
+index 718a363c0..3a86b71e9 100644
 --- a/frontend/utility/SimpleOutput.cpp
 +++ b/frontend/utility/SimpleOutput.cpp
-@@ -80,7 +80,9 @@ void SimpleOutput::LoadStreamingPreset_Lossy(const char *encoderId)
+@@ -90,7 +90,9 @@ void SimpleOutput::LoadStreamingPreset_Lossy(const char *encoderId)
  /* mistakes have been made to lead us to this. */
  const char *get_simple_output_encoder(const char *encoder)
  {
@@ -123,7 +123,7 @@ index d594b9987f4b..54ba20f89a8d 100644
  		return "obs_x264";
  	} else if (strcmp(encoder, SIMPLE_ENCODER_X264_LOWCPU) == 0) {
  		return "obs_x264";
-@@ -112,7 +114,7 @@ const char *get_simple_output_encoder(const char *encoder)
+@@ -122,7 +124,7 @@ const char *get_simple_output_encoder(const char *encoder)
  #endif
  	}
  
@@ -133,10 +133,10 @@ index d594b9987f4b..54ba20f89a8d 100644
  
  void SimpleOutput::LoadRecordingPreset()
 diff --git a/frontend/widgets/OBSBasic.cpp b/frontend/widgets/OBSBasic.cpp
-index b0698b29b547..b18e0612a98c 100644
+index b6f544530..e5ce7eff8 100644
 --- a/frontend/widgets/OBSBasic.cpp
 +++ b/frontend/widgets/OBSBasic.cpp
-@@ -576,6 +576,8 @@ static const double scaled_vals[] = {1.0, 1.25, (1.0 / 0.75), 1.5, (1.0 / 0.6),
+@@ -604,6 +604,8 @@ static const double scaled_vals[] = {1.0, 1.25, (1.0 / 0.75), 1.5, (1.0 / 0.6),
  #define DEFAULT_CONTAINER "hybrid_mp4"
  #endif
  
@@ -145,7 +145,7 @@ index b0698b29b547..b18e0612a98c 100644
  bool OBSBasic::InitBasicConfigDefaults()
  {
  	QList<QScreen *> screens = QGuiApplication::screens();
-@@ -737,7 +739,9 @@ bool OBSBasic::InitBasicConfigDefaults()
+@@ -767,7 +769,9 @@ bool OBSBasic::InitBasicConfigDefaults()
  	config_set_default_bool(activeConfiguration, "AdvOut", "UseRescale", false);
  	config_set_default_uint(activeConfiguration, "AdvOut", "TrackIndex", 1);
  	config_set_default_uint(activeConfiguration, "AdvOut", "VodTrackIndex", 2);
@@ -156,7 +156,7 @@ index b0698b29b547..b18e0612a98c 100644
  
  	config_set_default_string(activeConfiguration, "AdvOut", "RecType", "Standard");
  
-@@ -853,10 +857,13 @@ void OBSBasic::InitBasicConfigDefaults2()
+@@ -883,10 +887,13 @@ void OBSBasic::InitBasicConfigDefaults2()
  	bool oldEncDefaults = config_get_bool(App()->GetUserConfig(), "General", "Pre23Defaults");
  	bool useNV = EncoderAvailable("ffmpeg_nvenc") && !oldEncDefaults;
  
@@ -171,12 +171,12 @@ index b0698b29b547..b18e0612a98c 100644
 +				  useNV ? SIMPLE_ENCODER_NVENC : h264_fallback);
  
  	const char *aac_default = "ffmpeg_aac";
- 	if (EncoderAvailable("CoreAudio_AAC"))
+ 	if (EncoderAvailable("CoreAudio_AAC")) {
 diff --git a/frontend/widgets/OBSBasic.hpp b/frontend/widgets/OBSBasic.hpp
-index ca213433e0be..75b9207f3a2c 100644
+index 4343e1605..4011294e5 100644
 --- a/frontend/widgets/OBSBasic.hpp
 +++ b/frontend/widgets/OBSBasic.hpp
-@@ -76,6 +76,7 @@ enum class LogFileType;
+@@ -74,6 +74,7 @@ enum class ItemPasteType { Invalid, Reference, Duplicate, Both };
  
  #define SIMPLE_ENCODER_X264 "x264"
  #define SIMPLE_ENCODER_X264_LOWCPU "x264_lowcpu"
@@ -184,7 +184,7 @@ index ca213433e0be..75b9207f3a2c 100644
  #define SIMPLE_ENCODER_QSV "qsv"
  #define SIMPLE_ENCODER_QSV_AV1 "qsv_av1"
  #define SIMPLE_ENCODER_NVENC "nvenc"
-@@ -894,7 +895,7 @@ private:
+@@ -916,7 +917,7 @@ private:
  	void UpdateProfileEncoders();
  	std::vector<std::string> GetRestartRequirements(const ConfigFile &config) const;
  	void ResetProfileData();
@@ -194,10 +194,10 @@ index ca213433e0be..75b9207f3a2c 100644
  public:
  	inline const OBSProfileCache &GetProfileCache() const noexcept { return profiles; };
 diff --git a/frontend/widgets/OBSBasic_Profiles.cpp b/frontend/widgets/OBSBasic_Profiles.cpp
-index 4c655915fe1e..381a8662ed49 100644
+index 836be77ac..786df5bd9 100644
 --- a/frontend/widgets/OBSBasic_Profiles.cpp
 +++ b/frontend/widgets/OBSBasic_Profiles.cpp
-@@ -734,7 +734,7 @@ void OBSBasic::ActivateProfile(const OBSProfile &profile, bool reset)
+@@ -736,7 +736,7 @@ void OBSBasic::ActivateProfile(const OBSProfile &profile, bool reset)
  void OBSBasic::UpdateProfileEncoders()
  {
  	InitBasicConfigDefaults2();
@@ -206,7 +206,7 @@ index 4c655915fe1e..381a8662ed49 100644
  }
  
  void OBSBasic::ResetProfileData()
-@@ -782,10 +782,11 @@ std::vector<std::string> OBSBasic::GetRestartRequirements(const ConfigFile &conf
+@@ -784,10 +784,11 @@ std::vector<std::string> OBSBasic::GetRestartRequirements(const ConfigFile &conf
  	return result;
  }
  
@@ -219,19 +219,19 @@ index 4c655915fe1e..381a8662ed49 100644
  	bool qsv_supported = false;
  	bool qsv_av1_supported = false;
  	bool amd_supported = false;
-@@ -802,7 +803,9 @@ void OBSBasic::CheckForSimpleModeX264Fallback()
+@@ -804,7 +805,9 @@ void OBSBasic::CheckForSimpleModeX264Fallback()
  	const char *id;
  
  	while (obs_enum_encoder_types(idx++, &id)) {
--		if (strcmp(id, "h264_texture_amf") == 0)
-+		if (strcmp(id, "obs_x264") == 0)
+-		if (strcmp(id, "h264_texture_amf") == 0) {
++		if (strcmp(id, "obs_x264") == 0) {
 +			x264_supported = true;
-+		else if (strcmp(id, "h264_texture_amf") == 0)
++		} else if (strcmp(id, "h264_texture_amf") == 0) {
  			amd_supported = true;
- 		else if (strcmp(id, "obs_qsv11") == 0)
+ 		} else if (strcmp(id, "obs_qsv11") == 0) {
  			qsv_supported = true;
-@@ -825,69 +828,71 @@ void OBSBasic::CheckForSimpleModeX264Fallback()
- 			apple_hevc_supported = true;
+@@ -831,69 +834,71 @@ void OBSBasic::CheckForSimpleModeX264Fallback()
+ 		}
  #endif
  	}
 +	// Check to see whether x264 is available
@@ -313,18 +313,18 @@ index 4c655915fe1e..381a8662ed49 100644
  			}
  #endif
 diff --git a/frontend/wizards/AutoConfig.cpp b/frontend/wizards/AutoConfig.cpp
-index 86e6ccea875c..67f1497dce28 100644
+index 111c5bb6a..e4c419bf7 100644
 --- a/frontend/wizards/AutoConfig.cpp
 +++ b/frontend/wizards/AutoConfig.cpp
-@@ -176,6 +176,7 @@ AutoConfig::AutoConfig(QWidget *parent) : QWizard(parent)
- 		streamPage->ui->key->setText(key.c_str());
+@@ -174,6 +174,7 @@ AutoConfig::AutoConfig(QWidget *parent) : QWizard(parent)
+ 	}
  
  	TestHardwareEncoding();
 +	TestSoftwareEncoding();
  
  	int bitrate = config_get_int(main->Config(), "SimpleOutput", "VBitrate");
  	bool multitrackVideoEnabled = config_has_user_value(main->Config(), "Stream1", "EnableMultitrackVideo")
-@@ -210,6 +211,16 @@ AutoConfig::~AutoConfig()
+@@ -208,6 +209,16 @@ AutoConfig::~AutoConfig()
  	EnableThreadedMessageBoxes(false);
  }
  
@@ -341,7 +341,7 @@ index 86e6ccea875c..67f1497dce28 100644
  void AutoConfig::TestHardwareEncoding()
  {
  	size_t idx = 0;
-@@ -285,8 +296,10 @@ inline const char *AutoConfig::GetEncoderId(Encoder enc)
+@@ -287,8 +298,10 @@ inline const char *AutoConfig::GetEncoderId(Encoder enc)
  		return SIMPLE_ENCODER_AMD;
  	case Encoder::Apple:
  		return SIMPLE_ENCODER_APPLE_H264;
@@ -354,7 +354,7 @@ index 86e6ccea875c..67f1497dce28 100644
  };
  
 diff --git a/frontend/wizards/AutoConfig.hpp b/frontend/wizards/AutoConfig.hpp
-index 92fa568f98ac..65cabb8f6774 100644
+index 92fa568f9..65cabb8f6 100644
 --- a/frontend/wizards/AutoConfig.hpp
 +++ b/frontend/wizards/AutoConfig.hpp
 @@ -27,6 +27,7 @@ class AutoConfig : public QWizard {
@@ -382,10 +382,10 @@ index 92fa568f98ac..65cabb8f6774 100644
  
  	virtual void done(int result) override;
 diff --git a/frontend/wizards/AutoConfigTestPage.cpp b/frontend/wizards/AutoConfigTestPage.cpp
-index c6547ba1b149..3de259a5e15a 100644
+index a557346f5..46e7c7d32 100644
 --- a/frontend/wizards/AutoConfigTestPage.cpp
 +++ b/frontend/wizards/AutoConfigTestPage.cpp
-@@ -119,7 +119,8 @@ void AutoConfigTestPage::TestBandwidthThread()
+@@ -118,7 +118,8 @@ void AutoConfigTestPage::TestBandwidthThread()
  
  	const char *serverType = wiz->customServer ? "rtmp_custom" : "rtmp_common";
  
@@ -395,7 +395,7 @@ index c6547ba1b149..3de259a5e15a 100644
  	OBSEncoderAutoRelease aencoder = obs_audio_encoder_create("ffmpeg_aac", "test_aac", nullptr, 0, nullptr);
  	OBSServiceAutoRelease service = obs_service_create(serverType, "test_service", nullptr, nullptr);
  
-@@ -151,10 +152,11 @@ void AutoConfigTestPage::TestBandwidthThread()
+@@ -150,10 +151,11 @@ void AutoConfigTestPage::TestBandwidthThread()
  	obs_data_set_string(service_settings, "key", key.c_str());
  
  	obs_data_set_int(vencoder_settings, "bitrate", wiz->startingBitrate);
@@ -411,7 +411,7 @@ index c6547ba1b149..3de259a5e15a 100644
  	obs_data_set_int(aencoder_settings, "bitrate", 32);
  
  	OBSBasic *main = OBSBasic::Get();
-@@ -482,7 +484,8 @@ bool AutoConfigTestPage::TestSoftwareEncoding()
+@@ -490,7 +492,8 @@ bool AutoConfigTestPage::TestSoftwareEncoding()
  	/* -----------------------------------*/
  	/* create obs objects                 */
  
@@ -421,7 +421,7 @@ index c6547ba1b149..3de259a5e15a 100644
  	OBSEncoderAutoRelease aencoder = obs_audio_encoder_create("ffmpeg_aac", "test_aac", nullptr, 0, nullptr);
  	OBSOutputAutoRelease output = obs_output_create("null_output", "null", nullptr, nullptr);
  
-@@ -494,16 +497,20 @@ bool AutoConfigTestPage::TestSoftwareEncoding()
+@@ -502,16 +505,20 @@ bool AutoConfigTestPage::TestSoftwareEncoding()
  	obs_data_set_int(aencoder_settings, "bitrate", 32);
  
  	if (wiz->type != AutoConfig::Type::Recording) {
@@ -448,9 +448,9 @@ index c6547ba1b149..3de259a5e15a 100644
  	}
  
  	/* -----------------------------------*/
-@@ -850,7 +857,10 @@ void AutoConfigTestPage::TestStreamEncoderThread()
- 		else
+@@ -896,7 +903,10 @@ void AutoConfigTestPage::TestStreamEncoderThread()
  			wiz->streamingEncoder = AutoConfig::Encoder::AMD;
+ 		}
  	} else {
 -		wiz->streamingEncoder = AutoConfig::Encoder::x264;
 +		if (wiz->x264Available)
@@ -460,9 +460,9 @@ index c6547ba1b149..3de259a5e15a 100644
  	}
  
  #ifdef __linux__
-@@ -894,7 +904,10 @@ void AutoConfigTestPage::TestRecordingEncoderThread()
- 		else
+@@ -943,7 +953,10 @@ void AutoConfigTestPage::TestRecordingEncoderThread()
  			wiz->recordingEncoder = AutoConfig::Encoder::AMD;
+ 		}
  	} else {
 -		wiz->recordingEncoder = AutoConfig::Encoder::x264;
 +		if (wiz->x264Available)
@@ -472,7 +472,7 @@ index c6547ba1b149..3de259a5e15a 100644
  	}
  
  	if (wiz->recordingEncoder != AutoConfig::Encoder::NVENC) {
-@@ -909,6 +922,7 @@ void AutoConfigTestPage::TestRecordingEncoderThread()
+@@ -958,6 +971,7 @@ void AutoConfigTestPage::TestRecordingEncoderThread()
  
  #define ENCODER_TEXT(x) "Basic.Settings.Output.Simple.Encoder." x
  #define ENCODER_SOFTWARE ENCODER_TEXT("Software")
@@ -480,7 +480,7 @@ index c6547ba1b149..3de259a5e15a 100644
  #define ENCODER_NVENC ENCODER_TEXT("Hardware.NVENC.H264")
  #define ENCODER_QSV ENCODER_TEXT("Hardware.QSV.H264")
  #define ENCODER_AMD ENCODER_TEXT("Hardware.AMD.H264")
-@@ -946,6 +960,8 @@ void AutoConfigTestPage::FinalizeResults()
+@@ -995,6 +1009,8 @@ void AutoConfigTestPage::FinalizeResults()
  
  	auto encName = [](AutoConfig::Encoder enc) -> QString {
  		switch (enc) {
@@ -489,7 +489,7 @@ index c6547ba1b149..3de259a5e15a 100644
  		case AutoConfig::Encoder::x264:
  			return QTStr(ENCODER_SOFTWARE);
  		case AutoConfig::Encoder::NVENC:
-@@ -960,7 +976,7 @@ void AutoConfigTestPage::FinalizeResults()
+@@ -1009,7 +1025,7 @@ void AutoConfigTestPage::FinalizeResults()
  			return QTStr(QUALITY_SAME);
  		}
  
@@ -499,5 +499,5 @@ index c6547ba1b149..3de259a5e15a 100644
  
  	auto newLabel = [this](const char *str) -> QLabel * {
 -- 
-2.51.0
+2.55.0
 

diff --git a/0105-libobs-opengl-Reject-external-only-modifiers.patch b/0105-libobs-opengl-Reject-external-only-modifiers.patch
deleted file mode 100644
index 45d57ba..0000000
--- a/0105-libobs-opengl-Reject-external-only-modifiers.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 68d8ea90ce16d8ba2f82f096945378a46606f14b Mon Sep 17 00:00:00 2001
-From: Asahi Lina <lina@asahilina.net>
-Date: Fri, 15 Aug 2025 14:01:04 +0900
-Subject: [PATCH 5/5] libobs-opengl: Reject external-only modifiers
-
-These modifiers cannot be used with the standard texture sampling
-codepaths, so we need to reject them to avoid invalid GL operations.
-
-Closes obsproject/obs-studio#12498
----
- libobs-opengl/gl-egl-common.c | 21 ++++++++++++++++++++-
- 1 file changed, 20 insertions(+), 1 deletion(-)
-
-diff --git a/libobs-opengl/gl-egl-common.c b/libobs-opengl/gl-egl-common.c
-index b3ff73fcc80b..021efc1bc7ae 100644
---- a/libobs-opengl/gl-egl-common.c
-+++ b/libobs-opengl/gl-egl-common.c
-@@ -360,19 +360,38 @@ static inline bool query_dmabuf_modifiers(EGLDisplay egl_display, EGLint drm_for
- 
- 	if (max_modifiers != 0) {
- 		EGLuint64KHR *modifier_list = bzalloc(max_modifiers * sizeof(EGLuint64KHR));
--		EGLBoolean *external_only = NULL;
- 		if (!modifier_list) {
- 			blog(LOG_ERROR, "Unable to allocate memory");
- 			return false;
- 		}
- 
-+		EGLBoolean *external_only = bzalloc(max_modifiers * sizeof(EGLBoolean));
-+		if (!external_only) {
-+			blog(LOG_ERROR, "Unable to allocate memory");
-+			bfree(modifier_list);
-+			return false;
-+		}
-+
- 		if (!glad_eglQueryDmaBufModifiersEXT(egl_display, drm_format, max_modifiers, modifier_list,
- 						     external_only, &max_modifiers)) {
- 			blog(LOG_ERROR, "Cannot query a list of modifiers: %s", gl_egl_error_to_string(eglGetError()));
-+			bfree(external_only);
- 			bfree(modifier_list);
- 			return false;
- 		}
- 
-+		// Filter out external_only modifiers, since they require special handling.
-+		for (int i = 0, j = 0; j < max_modifiers; i++) {
-+			if (external_only[i]) {
-+				max_modifiers--;
-+				memmove(&modifier_list[j], &modifier_list[j + 1],
-+					sizeof(EGLuint64KHR) * (max_modifiers - j));
-+			} else {
-+				j++;
-+			}
-+		}
-+
-+		bfree(external_only);
- 		*modifiers = modifier_list;
- 	}
- 
--- 
-2.51.0
-

diff --git a/0201-WIP-Lock-down-Chrome-Runtime-dummy-Browser-Client.patch b/0201-WIP-Lock-down-Chrome-Runtime-dummy-Browser-Client.patch
index 0355e34..27bbd00 100644
--- a/0201-WIP-Lock-down-Chrome-Runtime-dummy-Browser-Client.patch
+++ b/0201-WIP-Lock-down-Chrome-Runtime-dummy-Browser-Client.patch
@@ -29,7 +29,7 @@ TODO: Version gate BrowserDummyClient
  create mode 100644 browser-dummy-client.hpp
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a6c9952f73c9..597320c3d743 100644
+index 0853ac0..16abf4c 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
 @@ -25,6 +25,8 @@ target_sources(
@@ -42,7 +42,7 @@ index a6c9952f73c9..597320c3d743 100644
            browser-scheme.hpp
            browser-version.h
 diff --git a/browser-app.cpp b/browser-app.cpp
-index 5d2c4dc7602a..9714824fea90 100644
+index 5d2c4dc..9714824 100644
 --- a/browser-app.cpp
 +++ b/browser-app.cpp
 @@ -48,11 +48,53 @@ CefRefPtr<CefBrowserProcessHandler> BrowserApp::GetBrowserProcessHandler()
@@ -100,7 +100,7 @@ index 5d2c4dc7602a..9714824fea90 100644
  {
  #ifdef _WIN32
 diff --git a/browser-app.hpp b/browser-app.hpp
-index b25d9accdec8..68e505cc4324 100644
+index b25d9ac..68e505c 100644
 --- a/browser-app.hpp
 +++ b/browser-app.hpp
 @@ -22,6 +22,7 @@
@@ -132,7 +132,7 @@ index b25d9accdec8..68e505cc4324 100644
  };
 diff --git a/browser-dummy-client.cpp b/browser-dummy-client.cpp
 new file mode 100644
-index 000000000000..923fbed0fb6d
+index 0000000..923fbed
 --- /dev/null
 +++ b/browser-dummy-client.cpp
 @@ -0,0 +1,79 @@
@@ -217,7 +217,7 @@ index 000000000000..923fbed0fb6d
 +}
 diff --git a/browser-dummy-client.hpp b/browser-dummy-client.hpp
 new file mode 100644
-index 000000000000..80c9280d60e5
+index 0000000..80c9280
 --- /dev/null
 +++ b/browser-dummy-client.hpp
 @@ -0,0 +1,47 @@
@@ -269,7 +269,7 @@ index 000000000000..80c9280d60e5
 +	IMPLEMENT_REFCOUNTING(BrowserDummyClient);
 +};
 diff --git a/cmake/os-linux.cmake b/cmake/os-linux.cmake
-index 98108066c26b..eb4e0068bfb5 100644
+index f74797a..9ef8671 100644
 --- a/cmake/os-linux.cmake
 +++ b/cmake/os-linux.cmake
 @@ -14,7 +14,8 @@ add_executable(OBS::browser-helper ALIAS browser-helper)
@@ -283,7 +283,7 @@ index 98108066c26b..eb4e0068bfb5 100644
  target_include_directories(browser-helper PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/deps"
                                                    "${CMAKE_CURRENT_SOURCE_DIR}/obs-browser-page")
 diff --git a/cmake/os-macos.cmake b/cmake/os-macos.cmake
-index 56c2e3025971..e96019a25781 100644
+index 6d6dc51..4f7fe27 100644
 --- a/cmake/os-macos.cmake
 +++ b/cmake/os-macos.cmake
 @@ -31,7 +31,8 @@ foreach(helper IN LISTS helper_suffixes)
@@ -297,10 +297,10 @@ index 56c2e3025971..e96019a25781 100644
    target_compile_definitions(${target_name} PRIVATE ENABLE_BROWSER_SHARED_TEXTURE)
  
 diff --git a/cmake/os-windows.cmake b/cmake/os-windows.cmake
-index db3c18760258..7f8615e02920 100644
+index 43f9d85..b025073 100644
 --- a/cmake/os-windows.cmake
 +++ b/cmake/os-windows.cmake
-@@ -10,8 +10,8 @@ add_executable(OBS::browser-helper ALIAS obs-browser-helper)
+@@ -13,8 +13,8 @@ add_executable(OBS::browser-helper ALIAS obs-browser-helper)
  target_sources(
    obs-browser-helper
    PRIVATE # cmake-format: sortable
@@ -309,8 +309,8 @@ index db3c18760258..7f8615e02920 100644
 +          browser-app.cpp browser-app.hpp browser-dummy-client.hpp browser-dummy-client.cpp
 +	  cef-headers.hpp obs-browser-page.manifest obs-browser-page/obs-browser-page-main.cpp)
  
- target_include_directories(obs-browser-helper PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/deps"
-                                                       "${CMAKE_CURRENT_SOURCE_DIR}/obs-browser-page")
+ configure_file(cmake/windows/obs-module-helper.rc.in obs-browser-page.rc)
+ target_sources(obs-browser-helper PRIVATE obs-browser-page.rc)
 -- 
-2.51.0
+2.55.0
 

diff --git a/0250-Update-to-C-20.patch b/0250-Update-to-C-20.patch
index e5203c0..88ee249 100644
--- a/0250-Update-to-C-20.patch
+++ b/0250-Update-to-C-20.patch
@@ -5,16 +5,15 @@ Subject: [PATCH] Update to C++20
 
 Current CEF requires compiling as C++20.
 ---
- CMakeLists.txt         | 2 +-
- cmake/os-linux.cmake   | 1 +
- obs-browser-source.cpp | 2 +-
- 3 files changed, 3 insertions(+), 2 deletions(-)
+ CMakeLists.txt       | 2 +-
+ cmake/os-linux.cmake | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0853ac0c2d24..0139b4c1c828 100644
+index 16abf4c..ba56c5a 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -42,7 +42,7 @@ target_sources(
+@@ -44,7 +44,7 @@ target_sources(
  
  target_include_directories(obs-browser PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/deps")
  
@@ -24,10 +23,10 @@ index 0853ac0c2d24..0139b4c1c828 100644
  
  if(OS_WINDOWS)
 diff --git a/cmake/os-linux.cmake b/cmake/os-linux.cmake
-index f74797a62118..23443bf73f86 100644
+index 9ef8671..2dc1175 100644
 --- a/cmake/os-linux.cmake
 +++ b/cmake/os-linux.cmake
-@@ -20,6 +20,7 @@ target_include_directories(browser-helper PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/d
+@@ -21,6 +21,7 @@ target_include_directories(browser-helper PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/d
                                                    "${CMAKE_CURRENT_SOURCE_DIR}/obs-browser-page")
  
  target_link_libraries(browser-helper PRIVATE CEF::Wrapper CEF::Library)
@@ -35,19 +34,6 @@ index f74797a62118..23443bf73f86 100644
  
  target_sources(obs-browser PRIVATE deps/ip-string-posix.cpp)
  
-diff --git a/obs-browser-source.cpp b/obs-browser-source.cpp
-index 6e80fbce8180..86780113f63c 100644
---- a/obs-browser-source.cpp
-+++ b/obs-browser-source.cpp
-@@ -512,7 +512,7 @@ void BrowserSource::Update(obs_data_t *settings)
- 			width = n_width;
- 			height = n_height;
- 			ExecuteOnBrowser(
--				[=](CefRefPtr<CefBrowser> cefBrowser) {
-+				[=, this](CefRefPtr<CefBrowser> cefBrowser) {
- 					const CefSize cefSize(width, height);
- 					cefBrowser->GetHost()->GetClient()->GetDisplayHandler()->OnAutoResize(
- 						cefBrowser, cefSize);
 -- 
-2.53.0
+2.55.0
 

diff --git a/obs-studio-UI-use-fdk-aac-by-default.patch b/obs-studio-UI-use-fdk-aac-by-default.patch
index 58f78f3..fc11efc 100644
--- a/obs-studio-UI-use-fdk-aac-by-default.patch
+++ b/obs-studio-UI-use-fdk-aac-by-default.patch
@@ -10,10 +10,10 @@ codec anyway.
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/frontend/wizards/AutoConfigTestPage.cpp b/frontend/wizards/AutoConfigTestPage.cpp
-index 5b5051919..9c4769e0a 100644
+index 46e7c7d32..e9562e9be 100644
 --- a/frontend/wizards/AutoConfigTestPage.cpp
 +++ b/frontend/wizards/AutoConfigTestPage.cpp
-@@ -194,7 +194,7 @@ void AutoConfigTestPage::TestBandwidthThread()
+@@ -120,7 +120,7 @@ void AutoConfigTestPage::TestBandwidthThread()
  
  	OBSEncoderAutoRelease vencoder = obs_video_encoder_create((wiz->x264Available ? "obs_x264" : "ffmpeg_openh264"),
  								  "test_h264", nullptr, nullptr);
@@ -22,7 +22,7 @@ index 5b5051919..9c4769e0a 100644
  	OBSServiceAutoRelease service = obs_service_create(serverType, "test_service", nullptr, nullptr);
  
  	/* -----------------------------------*/
-@@ -559,7 +559,7 @@ bool AutoConfigTestPage::TestSoftwareEncoding()
+@@ -494,7 +494,7 @@ bool AutoConfigTestPage::TestSoftwareEncoding()
  
  	OBSEncoderAutoRelease vencoder = obs_video_encoder_create((wiz->x264Available ? "obs_x264" : "ffmpeg_openh264"),
  								  "test_h264", nullptr, nullptr);
@@ -32,5 +32,5 @@ index 5b5051919..9c4769e0a 100644
  
  	/* -----------------------------------*/
 -- 
-2.46.2
+2.55.0
 

diff --git a/obs-studio.spec b/obs-studio.spec
index 91d045e..c52500d 100644
--- a/obs-studio.spec
+++ b/obs-studio.spec
@@ -33,8 +33,8 @@
 %global libvlc_soversion 5
 
 
-%global obswebsocket_version 5.7.3
-%global obsbrowser_commit ea04212e4bbadd077f9e6038758c4e4779c24fa3
+%global obswebsocket_version 5.7.4
+%global obsbrowser_commit 3f0a2cdf378939ebe3c6f9ab36d4ea100c25aac2
 
 # Upstream does not declare this yet. Arbitrarily pick 137.0 since it works
 # and it works around a CEF versioning teething issue:
@@ -46,8 +46,8 @@
 #global shortcommit %%(c=%%{commit}; echo ${c:0:7})
 
 Name:           obs-studio
-Version:        32.1.1
-Release:        7%{?dist}
+Version:        32.2.2
+Release:        1%{?dist}
 Summary:        Open Broadcaster Software Studio
 
 # OBS itself is GPL-2.0-or-later, while various plugin dependencies are of various other licenses
@@ -70,8 +70,6 @@ Patch0101:      0101-frontend-Consider-settings-changed-if-an-output-sett.patch
 Patch0102:      0102-frontend-Allow-invalid-recording-encoder-if-quality-.patch
 ## From: https://github.com/obsproject/obs-studio/pull/8529
 Patch0103:      0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch
-## From: https://github.com/obsproject/obs-studio/pull/12507
-Patch0105:      0105-libobs-opengl-Reject-external-only-modifiers.patch
 
 # WIP code to improve new CEF support (based on upstream dev tree)
 ## From: https://github.com/asahilina/obs-browser/tree/lockdown
@@ -402,6 +400,12 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.metainf
 
 
 %changelog
+* Fri Sep 04 2026 Diego Herrera <dherrera@redhat.com> - 32.2.2-1
+- Update to 32.2.2
+- Fixed obs-studio patches 0101, 0102, 0103, 1001
+- Fixed obs-browser patches 0201, 0250
+- Removed merged patch 0105
+
 * Thu Sep 03 2026 Dominik Mierzejewski <dominik@greysector.net> - 32.1.1-7
 - Rebuilt for FFmpeg 9
 

diff --git a/sources b/sources
index 8eefd60..af0d637 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (obs-studio-32.1.1.tar.gz) = 9b2ce82634a09e180f643bb56d37c34c2651de6a2fcd61b533af37234415f564e11bd4880d3500d1426be6e09c03fc7b8f9f990ab4537f925d3f7ee48adbf100
-SHA512 (obs-websocket-5.7.3.tar.gz) = 4b473a1f48128dd829285fbeac88144ea6a32b3350c0acf67e69f4180ebb43468007be991bbbc77c0fd0b2c5a5b8202d2ec5705ae0a6b3350678bc9a0d04d818
-SHA512 (obs-browser-ea04212e4bbadd077f9e6038758c4e4779c24fa3.tar.gz) = 2b8ffb22a78b3ac89d5742fac420d762fbf9a8631d97cfbe6001d9506206bc5ee0ba49c9dbf566c4d45955fcbb1ea9f90f7b9b6b228da9a05b62f04306684150
+SHA512 (obs-studio-32.2.2.tar.gz) = 3ea88c32f8c0564295cb15ab6d93376d878c26b4dc27d36872905d940f8855bb6ce36fcf71a3980382ab186c8325d31147b444f30761b92831ef9e50453cc6eb
+SHA512 (obs-websocket-5.7.4.tar.gz) = da350b6c0a0db2270a021a0f3e359f7127c6a300d972c34073dc03310eba4b53316bf9be16f48db4c1d40ebdbc9f5d0d6e01facb7b2d803b7e1a44ee6f8f3cce
+SHA512 (obs-browser-3f0a2cdf378939ebe3c6f9ab36d4ea100c25aac2.tar.gz) = 37aa5311c1a7c9c788f0c931f9ee03288477feeb52e643e2fde55b4f063a62feafba75f97287d196d7bb03e893018b730d2b91a3eff7809a9df3f61304a1eb58

                 reply	other threads:[~2026-09-04 17:43 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178854379347.1.13720128836626275315.rpms-obs-studio-811c6f337488@fedoraproject.org \
    --to=dherrera@redhat.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox