If the format is not one of the expected ones, just return rather than

proceeding with uninitialized data.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5495 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Soren Jorvang 2010-05-26 21:03:42 +00:00
parent f38ba8fcfe
commit 8949c1e309
3 changed files with 12 additions and 1 deletions

View File

@ -538,6 +538,9 @@ void CCodeWindow::OnToggleDLLWindow(int Id, bool _Show, int i)
PLUGINTYPE = PLUGIN_TYPE_VIDEO; PLUGINTYPE = PLUGIN_TYPE_VIDEO;
Title = wxT("Video"); Title = wxT("Video");
break; break;
default:
PanicAlert("CCodeWindow::OnToggleDLLWindow");
return;
} }
if (_Show) if (_Show)

View File

@ -516,6 +516,9 @@ void Tev::Indirect(unsigned int stageNum, s32 s, s32 t)
indcoord[2] = (indmap[GRN_C] & 0x07) + bias[2]; indcoord[2] = (indmap[GRN_C] & 0x07) + bias[2];
AlphaBump = AlphaBump & 0xf8; AlphaBump = AlphaBump & 0xf8;
break; break;
default:
PanicAlert("Tev::Indirect");
return;
} }
s64 indtevtrans[2] = { 0,0 }; s64 indtevtrans[2] = { 0,0 };
@ -547,6 +550,8 @@ void Tev::Indirect(unsigned int stageNum, s32 s, s32 t)
indtevtrans[0] = s * indcoord[1]; indtevtrans[0] = s * indcoord[1];
indtevtrans[1] = t * indcoord[1]; indtevtrans[1] = t * indcoord[1];
break; break;
default:
return;
} }
indtevtrans[0] = shift >= 0 ? indtevtrans[0] >> shift : indtevtrans[0] << -shift; indtevtrans[0] = shift >= 0 ? indtevtrans[0] >> shift : indtevtrans[0] << -shift;

View File

@ -259,6 +259,9 @@ void LightColor(const Vec3 &pos, const Vec3 &normal, u8 lightNum, const LitChann
float cosAtt = max(0.0f, light->cosatt * ldir); float cosAtt = max(0.0f, light->cosatt * ldir);
float distAtt = light->distatt * ldir; float distAtt = light->distatt * ldir;
attn = SafeDivide(max(0.0f, cosAtt), distAtt); attn = SafeDivide(max(0.0f, cosAtt), distAtt);
} else {
PanicAlert("LightColor");
return;
} }
switch (chan.diffusefunc) { switch (chan.diffusefunc) {
@ -324,7 +327,7 @@ void LightAlpha(const Vec3 &pos, const Vec3 &normal, u8 lightNum, const LitChann
float distAtt = light->distatt.x + (light->distatt.y * dist) + (light->distatt.z * dist2); float distAtt = light->distatt.x + (light->distatt.y * dist) + (light->distatt.z * dist2);
attn = SafeDivide(max(0.0f, cosAtt), distAtt); attn = SafeDivide(max(0.0f, cosAtt), distAtt);
} }
else if (chan.attnfunc == 1) { // specular else /* if (chan.attnfunc == 1) */ { // specular
// donko - what is going on here? 655.36 is a guess but seems about right. // donko - what is going on here? 655.36 is a guess but seems about right.
attn = (light->pos * normal) > -655.36 ? max(0.0f, (light->dir * normal)) : 0; attn = (light->pos * normal) > -655.36 ? max(0.0f, (light->dir * normal)) : 0;
ldir.set(1.0f, attn, attn * attn); ldir.set(1.0f, attn, attn * attn);