summaryrefslogtreecommitdiff
path: root/src/shared
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2013-09-21 19:25:33 +0200
committerTannin <devnull@localhost>2013-09-21 19:25:33 +0200
commitdfca8be71b15bc13997110cc8777dd5a84a1fde7 (patch)
treeaac3cf02be006c1f5a15c48872db965fa6f7b10f /src/shared
parent08037bf876659d52b8bb8be26c7aca362555ef85 (diff)
- esp reader now handles invalid files more gracefully
- files moved will now also be treated as "deleted" in the old location so a newly created file with that same name is not created in overwrite - introduced a mechanism by which MO can recognize if it crashed before when attempting to load a plugin. That plugin can be blacklisted so it doesn't get loaded again - plugins can now programaticaly change their settings - plugins can now store data persistently without exposing that data as settings - requesting an unset-setting from a plugin is no longer treated as a bug - clarified warning message for when files are in overwrite directory - the proxyPython plugin will now discover if python initialization crashed MO on a previous session and give the user a chance to fix it or disable the plugin - bugfix: GetModuleFileName modified the buffer past the zero termination. While this doesn't violate the API documentation it is different from the regular windows implementation - bugfix: proxy plugins couldn't access the parent widget - bugfix: when moving a file from overwrite to a mod the in-memory file structure wasn't updated - bugfix: name input dialog for profiles allowed names that weren't valid directory names - bugfix: profile dialog wasn't able to delete profiles if the name started or ended in whitespaces - bugfix: The name-cells for plugin settings could be changed (without effect) - removed a few obsolete files from the repository
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/gameinfo.cpp20
-rw-r--r--src/shared/skyriminfo.cpp4
-rw-r--r--src/shared/skyriminfo.h2
3 files changed, 13 insertions, 13 deletions
diff --git a/src/shared/gameinfo.cpp b/src/shared/gameinfo.cpp
index fd5072bf..6b53450d 100644
--- a/src/shared/gameinfo.cpp
+++ b/src/shared/gameinfo.cpp
@@ -62,36 +62,36 @@ void GameInfo::identifyMyGamesDirectory(const std::wstring &file)
}
-bool GameInfo::identifyGame(const std::wstring &omoDirectory, const std::wstring &searchPath)
+bool GameInfo::identifyGame(const std::wstring &moDirectory, const std::wstring &searchPath)
{
if (OblivionInfo::identifyGame(searchPath)) {
- s_Instance = new OblivionInfo(omoDirectory, searchPath);
+ s_Instance = new OblivionInfo(moDirectory, searchPath);
} else if (Fallout3Info::identifyGame(searchPath)) {
- s_Instance = new Fallout3Info(omoDirectory, searchPath);
+ s_Instance = new Fallout3Info(moDirectory, searchPath);
} else if (FalloutNVInfo::identifyGame(searchPath)) {
- s_Instance = new FalloutNVInfo(omoDirectory, searchPath);
+ s_Instance = new FalloutNVInfo(moDirectory, searchPath);
} else if (SkyrimInfo::identifyGame(searchPath)) {
- s_Instance = new SkyrimInfo(omoDirectory, searchPath);
+ s_Instance = new SkyrimInfo(moDirectory, searchPath);
}
return s_Instance != NULL;
}
-bool GameInfo::init(const std::wstring &omoDirectory, const std::wstring &gamePath)
+bool GameInfo::init(const std::wstring &moDirectory, const std::wstring &gamePath)
{
if (s_Instance == NULL) {
if (gamePath.length() == 0) {
// search upward in the directory until a recognized game-binary is found
- std::wstring searchPath(omoDirectory);
- while (!identifyGame(omoDirectory, searchPath)) {
+ std::wstring searchPath(moDirectory);
+ while (!identifyGame(moDirectory, searchPath)) {
size_t lastSep = searchPath.find_last_of(L"/\\");
if (lastSep == std::string::npos) {
return false;
}
searchPath.erase(lastSep);
}
- } else if (!identifyGame(omoDirectory, gamePath)) {
+ } else if (!identifyGame(moDirectory, gamePath)) {
return false;
}
}
@@ -204,4 +204,4 @@ std::wstring GameInfo::getSpecialPath(LPCWSTR name) const
return temp;
}
-} // namespace MOShared
+} // namespace MOShared
diff --git a/src/shared/skyriminfo.cpp b/src/shared/skyriminfo.cpp
index 80cf4c80..8c6b79ef 100644
--- a/src/shared/skyriminfo.cpp
+++ b/src/shared/skyriminfo.cpp
@@ -33,8 +33,8 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
namespace MOShared {
-SkyrimInfo::SkyrimInfo(const std::wstring &omoDirectory, const std::wstring &gameDirectory)
- : GameInfo(omoDirectory, gameDirectory)
+SkyrimInfo::SkyrimInfo(const std::wstring &moDirectory, const std::wstring &gameDirectory)
+ : GameInfo(moDirectory, gameDirectory)
{
identifyMyGamesDirectory(L"skyrim");
diff --git a/src/shared/skyriminfo.h b/src/shared/skyriminfo.h
index 4760c38b..c5d31ff0 100644
--- a/src/shared/skyriminfo.h
+++ b/src/shared/skyriminfo.h
@@ -95,7 +95,7 @@ public:
private:
- SkyrimInfo(const std::wstring &omoDirectory, const std::wstring &gameDirectory);
+ SkyrimInfo(const std::wstring &moDirectory, const std::wstring &gameDirectory);
static bool identifyGame(const std::wstring &searchPath);