[vlc-commits] [Git][videolan/vlc][master] qt: gtktheme: avoid std::move with static string references

Steve Lhomme (@robUx4) gitlab at videolan.org
Wed Mar 18 09:38:59 UTC 2026


Hello everyone

Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
ee4dde15 by Steve Lhomme at 2026-03-18T09:13:17+00:00
qt: gtktheme: avoid std::move with static string references

Coverity complains about it (CID 1668254):
> Using a moved object may lead to an unexpected/undefined behavior.

We don't need to move it. However the std::function should ensure we use a const std::string &.

Partial revert of a859066da38c6e3256a47d40f65a1cd458243843.

- - - - -


1 changed file:

- modules/gui/qt/style/gtkthemeprovider/gtkthemeprovider.cpp


Changes:

=====================================
modules/gui/qt/style/gtkthemeprovider/gtkthemeprovider.cpp
=====================================
@@ -66,7 +66,7 @@ static void setGtkColor(vlc_qt_theme_provider_t* obj,
 static void setGtkColorSet(vlc_qt_theme_provider_t* obj,
                            vlc_qt_theme_color_set set, vlc_qt_theme_color_section section,
                            vlc_qt_theme_color_name name,
-                           std::function<GdkRGBA (std::string)> getter, const std::string &selector)
+                           std::function<GdkRGBA (const std::string&)> getter, const std::string &selector)
 {
     setGtkColor(obj, set, section, name, VQTC_STATE_NORMAL, getter(selector));
     setGtkColor(obj, set, section, name, VQTC_STATE_DISABLED, getter(selector + ":disabled"));
@@ -79,27 +79,27 @@ static void setGtkColorSetBg(vlc_qt_theme_provider_t* obj,
                            vlc_qt_theme_color_set set,  vlc_qt_theme_color_name name,
                              const std::string &selector)
 {
-    setGtkColorSet(obj, set, VQTC_SECTION_BG, name, GetBgColor, std::move(selector));
+    setGtkColorSet(obj, set, VQTC_SECTION_BG, name, GetBgColor, selector);
 }
 
 static void setGtkColorSetFg(vlc_qt_theme_provider_t* obj,
                            vlc_qt_theme_color_set set,  vlc_qt_theme_color_name name,
                              const std::string &selector)
 {
-    setGtkColorSet(obj, set, VQTC_SECTION_FG, name, GetFgColor, std::move(selector));
+    setGtkColorSet(obj, set, VQTC_SECTION_FG, name, GetFgColor, selector);
 }
 
 static void setGtkColorSetFgFromBg(vlc_qt_theme_provider_t* obj,
                            vlc_qt_theme_color_set set,  vlc_qt_theme_color_name name,
                                    const std::string &selector)
 {
-    setGtkColorSet(obj, set, VQTC_SECTION_FG, name, GetBgColor, std::move(selector));
+    setGtkColorSet(obj, set, VQTC_SECTION_FG, name, GetBgColor, selector);
 }
 
 
 static void setGtkColorSetBorder(vlc_qt_theme_provider_t* obj, vlc_qt_theme_color_set set, const std::string &selector)
 {
-    setGtkColorSet(obj, set, VQTC_SECTION_DECORATION, VQTC_NAME_BORDER, GetBorderColor, std::move(selector));
+    setGtkColorSet(obj, set, VQTC_SECTION_DECORATION, VQTC_NAME_BORDER, GetBorderColor, selector);
 }
 
 static void setGtkColorSetHighlight(vlc_qt_theme_provider_t* obj, vlc_qt_theme_color_set set, const std::string &selector)



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/ee4dde1592a8a5080a96308e9ea22fbaf2295336

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/ee4dde1592a8a5080a96308e9ea22fbaf2295336
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list