ResourceManager.PreparePath() has this piece of code:
if (!path.StartsWith ("Assets/")) path = _ResourcePath + path;
But I've noticed PreparePath() is sometimes called with path "Assets\\Plugins\\Editor\\Node_Editor/LastSession.asset"
Then it doesn't enter the if and returned path is wrong - this produces error: UnityException: Cannot load NodeCanvas: The file at the specified path 'Assets/Plugins/Node_Editor/Resources/Assets\Plugins\Editor\Node_Editor/LastSession.asset' is no valid save file
Not in all projects, but it does happen (on Windows).
Doing path = path.Replace("\\", "/"); right in the beginning of function seems to fix it, perhaps there is a cleaner solution.
Windows is kind of weird with paths. Literal "/" in paths could also be replaced with Path.PathSeperator in the whole project (don't know if that would work).
(I'm using develop branch).
ResourceManager.PreparePath() has this piece of code:
if (!path.StartsWith ("Assets/")) path = _ResourcePath + path;
But I've noticed PreparePath() is sometimes called with path"Assets\\Plugins\\Editor\\Node_Editor/LastSession.asset"
Then it doesn't enter the if and returned path is wrong - this produces error:UnityException: Cannot load NodeCanvas: The file at the specified path 'Assets/Plugins/Node_Editor/Resources/Assets\Plugins\Editor\Node_Editor/LastSession.asset' is no valid save file
Not in all projects, but it does happen (on Windows). Doingpath = path.Replace("\\", "/");
right in the beginning of function seems to fix it, perhaps there is a cleaner solution. Windows is kind of weird with paths. Literal "/" in paths could also be replaced with Path.PathSeperator in the whole project (don't know if that would work). (I'm using develop branch).