]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - image.c
Refactor game/mod cvar defaults
[xonotic/darkplaces.git] / image.c
diff --git a/image.c b/image.c
index 9f07ce60f174a955f89474114062eb19bb8358eb..15835797ecde5bf6c2df3ed18f4402a55a724a5d 100644 (file)
--- a/image.c
+++ b/image.c
@@ -921,7 +921,7 @@ void Image_StripImageExtension (const char *in, char *out, size_t size_out)
        if (ext && (!strcmp(ext, "tga") || !strcmp(ext, "pcx") || !strcmp(ext, "lmp") || !strcmp(ext, "png") || !strcmp(ext, "jpg") || !strcmp(ext, "wal")))
                FS_StripExtension(in, out, size_out);
        else
-               strlcpy(out, in, size_out);
+               dp_strlcpy(out, in, size_out);
 }
 
 static unsigned char image_linearfromsrgb[256];
@@ -1059,14 +1059,14 @@ unsigned char *loadimagepixelsbgra (const char *filename, qbool complain, qbool
                        *c = '#';
        path[0] = 0;
        name[0] = 0;
-       strlcpy(afterpath, basename, sizeof(afterpath));
+       dp_strlcpy(afterpath, basename, sizeof(afterpath));
        if (strchr(basename, '/'))
        {
                int i;
                for (i = 0;i < (int)sizeof(path)-1 && basename[i] != '/' && basename[i];i++)
                        path[i] = basename[i];
                path[i] = 0;
-               strlcpy(afterpath, basename + i + 1, sizeof(afterpath));
+               dp_strlcpy(afterpath, basename + i + 1, sizeof(afterpath));
        }
        if (gamemode == GAME_TENEBRAE)
                firstformat = imageformats_tenebrae;
@@ -1084,6 +1084,9 @@ unsigned char *loadimagepixelsbgra (const char *filename, qbool complain, qbool
        for (format = firstformat;format->formatstring;format++)
        {
                dpsnprintf (name, sizeof(name), format->formatstring, basename);
+
+               FS_SanitizePath(name);
+
                if(FS_FileExists(name) && (f = FS_LoadFile(name, tempmempool, true, &filesize)) != NULL)
                {
                        mymiplevel = miplevel ? *miplevel : 0;