I came across a strange situation when I tried to call the function
Code: Select all
void Ogre::TerrainGroup::saveAllTerrains(bool onlyIfModified, bool replaceManualFilenames = true)
Code: Select all
OGRE EXCEPTION(5:ItemIdentityException): Cannot find a writable location in group General in ResourceGroupManager::createResource at ..\..\..\..\OgreMain\src\OgreResourceGroupManager.cpp (line 845)
Now the trouble comes, when reading the Ogre Source Code for that function:
Code: Select all
for (LocationList::iterator li = grp->locationList.begin();
li != grp->locationList.end(); ++li)
{
Archive* arch = (*li)->archive;
[b]if (!arch->isReadOnly() && [/b]
(locationPattern.empty() || StringUtil::match(arch->getName(), locationPattern, false)))
{
if (!overwrite && arch->exists(filename))
OGRE_EXCEPT(Exception::ERR_DUPLICATE_ITEM,
"Cannot overwrite existing file " + filename,
"ResourceGroupManager::createResource");
// create it
DataStreamPtr ret = arch->create(filename);
grp->addToIndex(filename, arch);
return ret;
}
}
OGRE_EXCEPT(Exception::ERR_ITEM_NOT_FOUND,
"Cannot find a writable location in group " + groupName,
"ResourceGroupManager::createResource");
So, that's the point, its a Ogre's bug (not updated to work with Win8) or there is some way I can avoid this?
Thanks