summaryrefslogtreecommitdiff
path: root/source/gl_sky.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/gl_sky.c')
-rw-r--r--source/gl_sky.c7
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();