diff --git a/WsNovelParser/WsNovelParser.vcxproj.user b/WsNovelParser/WsNovelParser.vcxproj.user
index 0de2f02..aa22114 100644
--- a/WsNovelParser/WsNovelParser.vcxproj.user
+++ b/WsNovelParser/WsNovelParser.vcxproj.user
@@ -6,7 +6,7 @@
--path "D:\Projects\Cpp\WsNovelParser\x64\test_file" --dest E:\
- --path "D:\CustomNovels\科学+修仙+创造世界" --dest E:\
+ --path "D:\Projects\Cpp\WsNovelParser\x64\test_file" --dest E:\
WindowsLocalDebugger
$(SolutionDir)$(Platform)\$(Configuration)\
diff --git a/libSyntax/libsyntax.cpp b/libSyntax/libsyntax.cpp
index 3333631..05a7fcf 100644
--- a/libSyntax/libsyntax.cpp
+++ b/libSyntax/libsyntax.cpp
@@ -339,12 +339,13 @@ void MatchCursor::enterExprs() {
}
void lib_syntax::MatchCursor::logExprsError(std::shared_ptr t, const QString& msg) {
- if(!this->_total_errors.contains(t->position()))
- this->_total_errors[t->position()] = QStringList();
+ auto pos_key = t?t->position():0;
+ if(!this->_total_errors.contains(pos_key))
+ this->_total_errors[pos_key] = QStringList();
- auto exists = this->_total_errors[t->position()];
+ auto exists = this->_total_errors[pos_key];
exists.append(msg);
- this->_total_errors[t->position()] = exists;
+ this->_total_errors[pos_key] = exists;
this->_exprs_errors.last()->addError(t, msg);