From 06dee3dedd99daa7108ead32e0b409ec2d450f6f Mon Sep 17 00:00:00 2001 From: NBonaparte Date: Sat, 20 Jan 2018 13:58:19 -0800 Subject: [PATCH] fix(volume): Warn instead of throw --- include/modules/meta/factory.hpp | 5 +++-- src/components/controller.cpp | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/include/modules/meta/factory.hpp b/include/modules/meta/factory.hpp index 99dfcdff..bb6fbba4 100644 --- a/include/modules/meta/factory.hpp +++ b/include/modules/meta/factory.hpp @@ -52,7 +52,7 @@ POLYBAR_NS using namespace modules; namespace { - module_interface* make_module(string&& name, const bar_settings& bar, string module_name) { + module_interface* make_module(string&& name, const bar_settings& bar, string module_name, const logger& m_log) { if (name == "internal/counter") { return new counter_module(bar, move(module_name)); } else if (name == "internal/backlight") { @@ -76,7 +76,8 @@ namespace { } else if (name == "internal/mpd") { return new mpd_module(bar, move(module_name)); } else if (name == "internal/volume") { - throw application_error("internal/volume is deprecated, use internal/alsa instead"); + m_log.warn("internal/volume is deprecated, use internal/alsa instead"); + return new alsa_module(bar, move("internal/alsa")); } else if (name == "internal/alsa") { return new alsa_module(bar, move(module_name)); } else if (name == "internal/pulseaudio") { diff --git a/src/components/controller.cpp b/src/components/controller.cpp index 0632fa7f..cd3fc334 100644 --- a/src/components/controller.cpp +++ b/src/components/controller.cpp @@ -103,7 +103,7 @@ controller::controller(connection& conn, signal_emitter& emitter, const logger& throw application_error("Inter-process messaging needs to be enabled"); } - m_modules[align].emplace_back(make_module(move(type), m_bar->settings(), module_name)); + m_modules[align].emplace_back(make_module(move(type), m_bar->settings(), module_name, m_log)); created_modules++; } catch (const runtime_error& err) { m_log.err("Disabling module \"%s\" (reason: %s)", module_name, err.what());