Provide for GPU init failure, kill a warning.

This commit is contained in:
Unknown W. Brackets 2013-09-07 22:30:30 -07:00
parent 657f7f1a2d
commit bbf714c361
3 changed files with 14 additions and 5 deletions

View File

@ -271,7 +271,11 @@ bool PSP_Init(const CoreParameter &coreParam, std::string *error_string) {
bool success = coreParameter.fileToStart != "";
*error_string = coreParameter.errorString;
if (success) {
GPU_Init();
success = GPU_Init();
if (!success) {
PSP_Shutdown();
*error_string = "Unable to initialize rendering engine.";
}
}
return success;
}

View File

@ -29,7 +29,7 @@ GPUStateCache gstate_c;
GPUInterface *gpu;
GPUStatistics gpuStats;
void GPU_Init() {
bool GPU_Init() {
switch (PSP_CoreParameter().gpuCore) {
case GPU_NULL:
gpu = new NullGPU();
@ -37,12 +37,17 @@ void GPU_Init() {
case GPU_GLES:
gpu = new GLES_GPU();
break;
#ifndef __SYMBIAN32__
case GPU_SOFTWARE:
#ifndef __SYMBIAN32__
gpu = new SoftGPU();
break;
#endif
break;
case GPU_DIRECTX9:
// TODO
break;
}
return gpu != NULL;
}
void GPU_Shutdown() {

View File

@ -490,7 +490,7 @@ struct GPUStatistics {
int numFBOs;
};
void GPU_Init();
bool GPU_Init();
void GPU_Shutdown();
void InitGfxState();