diff --git a/tooltipfilter.cpp b/tooltipfilter.cpp
--- a/tooltipfilter.cpp
+++ b/tooltipfilter.cpp
@@ -32,16 +32,24 @@ bool ToolTipFilter::eventFilter(QObject 
         // prepare tooltip message
         QToolButton* toolButton = (QToolButton*) obj;
         QAction* action = toolButton->defaultAction();
-        QString toolTip = action->toolTip();
+
+        QString toolTip;
+        if (action != NULL)
+        {
+            toolTip = action->toolTip();
+            QKeySequence keys = action->shortcut();
+            if (!keys.isEmpty())
+            {
+                toolTip += QString(" [") + keys.toString() + "]";
+            }
+        }
+        else
+        {
+            toolTip = toolButton->toolTip();
+        }
 
         if (toolTip.isEmpty()) return false;
 
-        QKeySequence keys = action->shortcut();
-        if (!keys.isEmpty())
-        {
-            toolTip += QString(" [") + keys.toString() + "]";
-        }
-
         // show tooltip message
         QHelpEvent *helpEvent = static_cast(ev);
         QToolTip::showText(helpEvent->globalPos(), toolTip);