lets retry that change from omega but this time keep the projection hacks >_>

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2527 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
daco65
2009-03-02 21:17:16 +00:00
parent 10e027b48b
commit 4cb7f2f490
5 changed files with 33 additions and 20 deletions

View File

@ -34,7 +34,7 @@
it will not be used when we Start and Stop games. With these exceptions:
1. Video plugin: If FreeLibrary() is not called between Stop and Start it will fail for
several games on the next Start, but not for all games.
2. Sond plugin: If FreeLibrary() is not called between Stop and Start I got the "Tried to
2. Sound plugin: If FreeLibrary() is not called between Stop and Start I got the "Tried to
"get pointer for unknown address ffffffff" message for all games I tried.
Currently this holds if the 'SETUP_FREE_PLUGIN_ON_BOOT' option is used
@ -276,6 +276,10 @@ void CPluginManager::GetPluginInfo(CPluginInfo *&info, std::string Filename)
if (m_PluginInfos.at(i).GetFilename() == Filename)
{
info = &m_PluginInfos.at(i);
if (info == NULL)
{
PanicAlert("error reading info from dll");
}
return;
}
}
@ -291,10 +295,16 @@ void *CPluginManager::LoadPlugin(const char *_rFilename, int Number)
/* Avoid calling LoadLibrary() again and instead point to the plugin info that we found when
Dolphin was started */
CPluginInfo *info = NULL;
GetPluginInfo(info, Filename);
if (info == NULL)
{
PanicAlert("Can't open %s, it's missing", _rFilename);
if (!Filename.empty()){
GetPluginInfo(info, Filename);
if (info == NULL)
{
PanicAlert("Can't open %s, it's missing", _rFilename);
return NULL;
}
}
else{
PanicAlert("error with dll Filename (its NULL)");
return NULL;
}