diff --git a/src/appmenu.cpp b/src/appmenu.cpp
index e7dc8f8..8e7972d 100644
--- a/src/appmenu.cpp
+++ b/src/appmenu.cpp
@@ -70,6 +70,10 @@ void AppMenu::activeWindowChanged(WId wid)
 
 void AppMenu::match(Plasma::RunnerContext &context)
 {
+    if (m_activeWid == 0) {
+        return;
+    }
+
     const QString term = context.query().toLower();
     if (term.length() < 3) {
         return;
@@ -79,6 +83,11 @@ void AppMenu::match(Plasma::RunnerContext &context)
     m_dbusMenu = 0;
 
     QPair <QString, QString> dbusInfo = getMenuForActiveWindow();
+
+    if (dbusInfo.first.isEmpty() || dbusInfo.second.isEmpty()) {
+        return;
+    }
+
     m_dbusMenu = new com::canonical::dbusmenu(dbusInfo.first, dbusInfo.second, QDBusConnection::sessionBus());
 
     qDebug() << "Getting Layout";
