diff options
Diffstat (limited to 'source/gl_sky.c')
-rw-r--r-- | source/gl_sky.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/gl_sky.c b/source/gl_sky.c index fd0a305..163ae7f 100644 --- a/source/gl_sky.c +++ b/source/gl_sky.c @@ -387,6 +387,7 @@ void R_SetSky( const char *name, float rotate, vec3_t axis ) { int i; char pathname[MAX_QPATH]; image_t *image; + size_t len; // 3dstudio environment map names static const char suf[6][3] = { "rt", "bk", "lf", "ft", "up", "dn" }; @@ -399,8 +400,12 @@ void R_SetSky( const char *name, float rotate, vec3_t axis ) { VectorCopy (axis, skyaxis); for( i = 0; i < 6; i++ ) { - Q_concat( pathname, sizeof( pathname ), + len = Q_concat( pathname, sizeof( pathname ), "env/", name, suf[i], ".tga", NULL ); + if( len >= sizeof( pathname ) ) { + R_UnsetSky(); + return; + } image = IMG_Find( pathname, it_sky ); if( !image ) { R_UnsetSky(); |