diff --git a/src/libs/cplusplus/ASTPath.cpp b/src/libs/cplusplus/ASTPath.cpp
index d1879fa1e2788f04ce89b4774f333fedeba3e647..28f5437d8c2c24da98854e474b41a38dc510661f 100644
--- a/src/libs/cplusplus/ASTPath.cpp
+++ b/src/libs/cplusplus/ASTPath.cpp
@@ -44,7 +44,12 @@ QList<AST *> ASTPath::operator()(int line, int column)
     _nodes.clear();
     _line = line + 1;
     _column = column + 1;
-    accept(_doc->translationUnit()->ast());
+
+    if (_doc) {
+        if (TranslationUnit *unit = _doc->translationUnit())
+            accept(unit->ast());
+    }
+
     return _nodes;
 }