]> granicus.if.org Git - icinga2/commitdiff
Make Application::ProcessEvents() static.
authorGunnar Beutner <gunnar.beutner@netways.de>
Wed, 13 Feb 2013 06:25:36 +0000 (07:25 +0100)
committerGunnar Beutner <gunnar.beutner@netways.de>
Wed, 13 Feb 2013 06:25:36 +0000 (07:25 +0100)
lib/base/application.cpp
lib/base/application.h
lib/base/utility.cpp

index 5af93ab2fe5dccb4553248b71e9fa8c6583dd748..7fdcfa2af7db179c43ab0ae0add56f9378e43d12 100644 (file)
@@ -91,7 +91,7 @@ Application::Ptr Application::GetInstance(void)
  *
  * @returns false if we're shutting down, true otherwise.
  */
-bool Application::ProcessEvents(void) const
+bool Application::ProcessEvents(void)
 {
        Object::ClearHeldObjects();
 
index 3ba1af3ce864734c2621b322bb7efa2be81838e8..fb92f5025de5fd9395e08da13579c7a51ed7cd64 100644 (file)
@@ -76,7 +76,7 @@ public:
        static String GetPkgDataDir(void);
        static void SetPkgDataDir(const String& path);
 
-       bool ProcessEvents(void) const;
+       static bool ProcessEvents(void);
 
 protected:
        void RunEventLoop(void) const;
index f22f611aba6f32a72ee700541a27c86b2a3a672e..e8b9de8783d2654357c438fbda6d76c837eb375e 100644 (file)
@@ -522,17 +522,7 @@ bool Utility::Glob(const String& pathSpec, const function<void (const String&)>&
  */
 void Utility::WaitUntil(const function<bool (void)>& predicate)
 {
-       while (!predicate()) {
-               Application::Ptr instance = Application::GetInstance();
-
-               /* Waiting for a predicate requires an application instance.
-                * This means we cannot do certain asynchronous things
-                * (like spawning a process) until the application instance
-                * has been initialized. */
-               if (!instance)
-                       BOOST_THROW_EXCEPTION(runtime_error("Waiting for predicate failed: Application instance is not initialized."));
-
-               instance->ProcessEvents();
-       }
+       while (!predicate())
+               Application::ProcessEvents();
 }