aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/resourceeditor/resourcenode.cpp10
-rw-r--r--src/plugins/resourceeditor/resourcenode.h2
2 files changed, 7 insertions, 5 deletions
diff --git a/src/plugins/resourceeditor/resourcenode.cpp b/src/plugins/resourceeditor/resourcenode.cpp
index 20f67b2eecd..354f56c4ee2 100644
--- a/src/plugins/resourceeditor/resourcenode.cpp
+++ b/src/plugins/resourceeditor/resourcenode.cpp
@@ -270,12 +270,14 @@ ResourceTopLevelNode::ResourceTopLevelNode(const FileName &filePath, bool genera
{
setIsGenerated(generated);
setIcon(FileIconProvider::icon(filePath.toString()));
- if (contents.isEmpty()) {
- m_document = new ResourceFileWatcher(this);
- DocumentManager::addDocument(m_document);
+ if (!filePath.isEmpty()) {
+ QFileInfo fi = filePath.toFileInfo();
+ if (fi.isFile() && fi.isReadable()) {
+ m_document = new ResourceFileWatcher(this);
+ DocumentManager::addDocument(m_document);
+ }
} else {
m_contents = contents;
- m_document = nullptr;
}
FileName base = parent->filePath();
diff --git a/src/plugins/resourceeditor/resourcenode.h b/src/plugins/resourceeditor/resourcenode.h
index f1377eaa147..e2f84e005a7 100644
--- a/src/plugins/resourceeditor/resourcenode.h
+++ b/src/plugins/resourceeditor/resourcenode.h
@@ -56,7 +56,7 @@ public:
QString contents() const { return m_contents; }
private:
- Internal::ResourceFileWatcher *m_document;
+ Internal::ResourceFileWatcher *m_document = nullptr;
QString m_contents;
};