- bugfix for headless server mode (null pixmaps) shown by stacktrace on fakir

This commit is contained in:
SoftCoder 2013-11-28 16:20:40 -08:00
parent 00b4d9ab4e
commit be3d4d300c

View File

@ -152,13 +152,21 @@ void Minimap::incFowTextureAlphaSurface(const Vec2i &sPos, float alpha,
} }
void Minimap::copyFowTexAlphaSurface() { void Minimap::copyFowTexAlphaSurface() {
if(fowPixmap1_default != NULL && fowPixmap1 != NULL) {
fowPixmap1_default->copy(fowPixmap1); fowPixmap1_default->copy(fowPixmap1);
}
if(fowPixmap1Copy_default != NULL && fowPixmap1Copy != NULL) {
fowPixmap1Copy_default->copy(fowPixmap1Copy); fowPixmap1Copy_default->copy(fowPixmap1Copy);
} }
}
void Minimap::restoreFowTexAlphaSurface() { void Minimap::restoreFowTexAlphaSurface() {
if(fowPixmap1 != NULL && fowPixmap1_default != NULL) {
fowPixmap1->copy(fowPixmap1_default); fowPixmap1->copy(fowPixmap1_default);
}
if(fowPixmap1Copy != NULL && fowPixmap1Copy_default != NULL) {
fowPixmap1Copy->copy(fowPixmap1Copy_default); fowPixmap1Copy->copy(fowPixmap1Copy_default);
} }
}
void Minimap::setFogOfWar(bool value) { void Minimap::setFogOfWar(bool value) {
fogOfWar = value; fogOfWar = value;
@ -166,16 +174,24 @@ void Minimap::setFogOfWar(bool value) {
} }
void Minimap::copyFowTex() { void Minimap::copyFowTex() {
if(fowPixmap0Copy != NULL && fowPixmap0 != NULL) {
fowPixmap0Copy->copy(fowPixmap0); fowPixmap0Copy->copy(fowPixmap0);
}
if(fowPixmap1Copy != NULL && fowPixmap1 != NULL) {
fowPixmap1Copy->copy(fowPixmap1); fowPixmap1Copy->copy(fowPixmap1);
} }
}
void Minimap::restoreFowTex() { void Minimap::restoreFowTex() {
if(fowPixmap0 != NULL && fowPixmap0Copy != NULL) {
fowPixmap0->copy(fowPixmap0Copy); fowPixmap0->copy(fowPixmap0Copy);
}
if(fowPixmap1 != NULL && fowPixmap1Copy != NULL) {
fowPixmap1->copy(fowPixmap1Copy); fowPixmap1->copy(fowPixmap1Copy);
} }
}
void Minimap::resetFowTex() { void Minimap::resetFowTex() {
if(fowTex) { if(fowTex && fowPixmap0 && fowPixmap1) {
Pixmap2D *tmpPixmap= fowPixmap0; Pixmap2D *tmpPixmap= fowPixmap0;
fowPixmap0= fowPixmap1; fowPixmap0= fowPixmap1;
fowPixmap1= tmpPixmap; fowPixmap1= tmpPixmap;
@ -226,7 +242,7 @@ void Minimap::resetFowTex() {
} }
void Minimap::updateFowTex(float t) { void Minimap::updateFowTex(float t) {
if(fowPixmap0 && fowTex) { if(fowTex && fowPixmap0 && fowPixmap1) {
for(int indexPixelWidth = 0; for(int indexPixelWidth = 0;
indexPixelWidth < fowPixmap0->getW(); indexPixelWidth < fowPixmap0->getW();
++indexPixelWidth){ ++indexPixelWidth){