diff --git a/init/quirks.cpp b/init/quirks.cpp index 7cabe75..50a0f95 100644 --- a/init/quirks.cpp +++ b/init/quirks.cpp @@ -11,6 +11,11 @@ #include #include +// Default constructor to add self to the loaded list of quirks +DeviceQuirk::DeviceQuirk() { + Quirks::Add(this); +} + // Default destructor for DeviceQuirk DeviceQuirk::~DeviceQuirk() { diff --git a/init/quirks.h b/init/quirks.h index 105c2f7..bbcb34a 100644 --- a/init/quirks.h +++ b/init/quirks.h @@ -22,8 +22,9 @@ void fork_execl(Args... args) { class DeviceQuirk { public: - virtual bool ShouldRun(); - virtual void Run(); + DeviceQuirk(); + virtual bool ShouldRun() = 0; + virtual void Run() = 0; virtual ~DeviceQuirk(); }; diff --git a/init/quirks/soc/mtk_ril.cpp b/init/quirks/soc/mtk_ril.cpp index c14b331..6acf648 100644 --- a/init/quirks/soc/mtk_ril.cpp +++ b/init/quirks/soc/mtk_ril.cpp @@ -13,10 +13,6 @@ const string PATHS[] = { class MtkRilQuirk : DeviceQuirk { public: - MtkRilQuirk() { - Quirks::Add(this); - } - bool ShouldRun() { for (auto& p : PATHS) { if (filesystem::exists(p)) {