ukui-media/0007-fix-probabilistic-crash-when-keyboard-keys-are-mute.patch

57 lines
3.6 KiB
Diff

From 4ded5d08faa69e9dc90679ece13935b4b846574b Mon Sep 17 00:00:00 2001
From: tanyulong <tanyulong@kylinos.cn>
Date: Tue, 13 Jul 2021 10:30:27 +0800
Subject: [PATCH] fix probabilistic crash when keyboard keys are mute
---
.../ukmedia_device_switch_widget.cpp | 14 ++++++++++++--
.../ukui-volume-control-applet-qt.pro | 2 +-
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp
index b8dc5f5..2e7ebbd 100755
--- a/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp
+++ b/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp
@@ -1466,7 +1466,9 @@ void DeviceSwitchWidget::add_stream (DeviceSwitchWidget *w, MateMixerStream *str
if (m_pAppInfo != nullptr) {
const gchar *m_pAppName = mate_mixer_app_info_get_name(m_pAppInfo);
if (strcmp(m_pAppName,"ukui-session") != 0 && strcmp(m_pAppName,"ukui-volume-control-applet-qt") != 0 && strcmp(m_pAppName,"Volume Control") && \
- strcmp(m_pAppName,"ALSA plug-in [mate-screenshot]") && strcmp(m_pAppName,"ALSA plug-in [ukui-volume-control-applet-qt]")) {
+ strcmp(m_pAppName,"ALSA plug-in [mate-screenshot]") && strcmp(m_pAppName,"ALSA plug-in [ukui-volume-control-applet-qt]") && \
+ strcmp(m_pAppName,"Ukui Volume Control App") && !strstr(m_pAppName,"QtPulseAudio") && strcmp(m_pAppName,"ukuimedia-volume-control") != 0 && \
+ !strstr(m_pAppName,"ukui-settings-daemon")) {
if G_UNLIKELY (w->control == nullptr)
return;
add_application_control (w, w->control,m_pStreamControlName);
@@ -1580,8 +1582,16 @@ void DeviceSwitchWidget::on_stream_control_added (MateMixerStream *stream,const
MateMixerAppInfo *m_pAppInfo = mate_mixer_stream_control_get_app_info(w->control);
if (m_pAppInfo != nullptr) {
const gchar *m_pAppName = mate_mixer_app_info_get_name(m_pAppInfo);
+ const gchar *appIconName = mate_mixer_app_info_get_icon(m_pAppInfo);
+ if (appIconName && strstr(appIconName,"recording")) {
+ m_pAppName = "kylin-recorder";
+ appIconName = "kylin-recorder";
+ }
+
if (strcmp(m_pAppName,"ukui-session") != 0 && strcmp(m_pAppName,"ukui-volume-control-applet-qt") != 0 && strcmp(m_pAppName,"Volume Control") && \
- strcmp(m_pAppName,"ALSA plug-in [mate-screenshot]") && strcmp(m_pAppName,"ALSA plug-in [ukui-volume-control-applet-qt]")) {
+ strcmp(m_pAppName,"ALSA plug-in [mate-screenshot]") && strcmp(m_pAppName,"ALSA plug-in [ukui-volume-control-applet-qt]") && \
+ strcmp(m_pAppName,"Ukui Volume Control App") && !strstr(m_pAppName,"QtPulseAudio") && strcmp(m_pAppName,"ukuimedia-volume-control") != 0 && \
+ !strstr(m_pAppName,"ukui-settings-daemon")) {
if G_UNLIKELY (w->control == nullptr)
return;
diff --git a/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro b/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro
index b7ae512..5a8ff3c 100755
--- a/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro
+++ b/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro
@@ -1,4 +1,4 @@
-######################################################################
+F######################################################################
# Automatically generated by qmake (3.1) Fri Oct 11 17:35:00 2019
######################################################################
--
2.23.0