diff --git a/src/plugins/projectexplorer/task.cpp b/src/plugins/projectexplorer/task.cpp
index 947628ba823cc91ee7ac1e3dea230f979a575dbc..2016a644ccfee70727b4f421a49a9cd6d6fd61f2 100644
--- a/src/plugins/projectexplorer/task.cpp
+++ b/src/plugins/projectexplorer/task.cpp
@@ -32,12 +32,10 @@
 namespace ProjectExplorer
 {
 
-unsigned int Task::s_nextId = 0;
+unsigned int Task::s_nextId = 1;
 
-Task::Task() : taskId(s_nextId), type(Unknown), line(-1)
-{
-    ++s_nextId;
-}
+Task::Task() : taskId(0), type(Unknown), line(-1)
+{ }
 
 Task::Task(TaskType type_, const QString &description_,
            const QString &file_, int line_, const QString &category_) :
@@ -47,6 +45,9 @@ Task::Task(TaskType type_, const QString &description_,
     ++s_nextId;
 }
 
+bool Task::isNull() const
+{ return taskId == 0; }
+
 //
 // functions
 //
diff --git a/src/plugins/projectexplorer/task.h b/src/plugins/projectexplorer/task.h
index db6fa228e09bd897b90c69e707f21a078a2baf5c..4373a3a87d76647788418156239219c2970019a7 100644
--- a/src/plugins/projectexplorer/task.h
+++ b/src/plugins/projectexplorer/task.h
@@ -52,6 +52,8 @@ public:
     Task(TaskType type_, const QString &description_,
          const QString &file_, int line_, const QString &category_);
 
+    bool isNull() const;
+
     unsigned int taskId;
     TaskType type;
     QString description;