From: Cloudwalk Date: Fri, 24 Mar 2023 13:54:31 +0000 (-0400) Subject: fs: Use unsigned short for filename size X-Git-Tag: xonotic-v0.8.6~2 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=95682963ff1d59352ddc174364d311dff4933b53;p=xonotic%2Fdarkplaces.git fs: Use unsigned short for filename size Also remove namesize < 0 check as this is no longer possible --- diff --git a/fs.c b/fs.c index 1fecfddb..747ace82 100644 --- a/fs.c +++ b/fs.c @@ -682,7 +682,7 @@ static int PK3_BuildFileList (pack_t *pack, const pk3_endOfCentralDir_t *eocd) return -1; } - namesize = BuffLittleShort (&ptr[28]); // filename length + namesize = (unsigned short)BuffLittleShort (&ptr[28]); // filename length // Check encryption, compression, and attributes // 1st uint8 : general purpose bit flag @@ -699,7 +699,7 @@ static int PK3_BuildFileList (pack_t *pack, const pk3_endOfCentralDir_t *eocd) if ((ptr[8] & 0x21) == 0 && (ptr[38] & 0x18) == 0) { // Still enough bytes for the name? - if (namesize < 0 || remaining < namesize || namesize >= (int)sizeof (*pack->files)) + if (remaining < namesize || namesize >= (int)sizeof (*pack->files)) { Mem_Free (central_dir); return -1;