Skip to content

Commit b16df51

Browse files
committed
Fix warnings and a possible pointer bug detected by MSVC 2022
1 parent 6c52ae5 commit b16df51

File tree

7 files changed

+37
-13
lines changed

7 files changed

+37
-13
lines changed

examples/rres_chunk_info.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,9 @@ int main(void)
6060
// Display resource chunks info
6161
// NOTE: Central Directory relates input files to rres resource chunks,
6262
// some input files could generate multiple rres resource chunks (Font files)
63-
for (int i = 0; i < chunkCount; i++)
63+
for (unsigned int i = 0; i < chunkCount; i++)
6464
{
65-
for (int j = 0; j < dir.count; j++)
65+
for (unsigned int j = 0; j < dir.count; j++)
6666
{
6767
if ((infos[i].id == dir.entries[j].id) && (infos[i].id != prevId))
6868
{

examples/rres_data_loading.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ int main(void)
176176
// TEST 06: Load font data, multiples chunks (RRES_DATA_FONT_GLYPHS + RRE_DATA_IMAGE)
177177
//------------------------------------------------------------------------------------------------------
178178
multi = rresLoadResourceMulti(droppedFiles.paths[0], rresGetResourceId(dir, "pixantiqua.ttf"));
179-
for (int i = 0; i < multi.count; i++)
179+
for (unsigned int i = 0; i < multi.count; i++)
180180
{
181181
result = UnpackResourceChunk(&multi.chunks[i]); // Decompres/decipher resource data (if required)
182182
if (result != 0) break;
@@ -216,7 +216,7 @@ int main(void)
216216
DrawTexture(texture, 0, 0, WHITE);
217217

218218
// Draw text using font loaded from .rres: RRES_DATA_FONT_GLYPHS + RRES_DATA_IMAGE
219-
DrawTextEx(font, "THIS IS a TEST!", (Vector2) { 10, 50 }, font.baseSize, 0, RED);
219+
DrawTextEx(font, "THIS IS a TEST!", (Vector2) { 10, 50 }, (float)font.baseSize, 0, RED);
220220

221221
EndDrawing();
222222
//----------------------------------------------------------------------------------

projects/VS2022/rres/rres_chunk_info.vcxproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@
173173
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174174
<CompileAs>CompileAsC</CompileAs>
175175
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
176+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
176177
</ClCompile>
177178
<Link>
178179
<SubSystem>Console</SubSystem>
@@ -191,6 +192,7 @@
191192
<CompileAs>CompileAsC</CompileAs>
192193
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
193194
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
195+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
194196
</ClCompile>
195197
<Link>
196198
<SubSystem>Console</SubSystem>
@@ -208,6 +210,7 @@
208210
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
209211
<CompileAs>CompileAsC</CompileAs>
210212
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
213+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
211214
</ClCompile>
212215
<Link>
213216
<SubSystem>Console</SubSystem>
@@ -229,6 +232,7 @@
229232
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
230233
<CompileAs>CompileAsC</CompileAs>
231234
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
235+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
232236
</ClCompile>
233237
<Link>
234238
<SubSystem>Console</SubSystem>
@@ -255,6 +259,7 @@
255259
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
256260
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
257261
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
262+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
258263
</ClCompile>
259264
<Link>
260265
<SubSystem>Console</SubSystem>
@@ -279,6 +284,7 @@
279284
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
280285
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
281286
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
287+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
282288
</ClCompile>
283289
<Link>
284290
<SubSystem>Console</SubSystem>
@@ -301,6 +307,7 @@
301307
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
302308
<CompileAs>CompileAsC</CompileAs>
303309
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
310+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
304311
</ClCompile>
305312
<Link>
306313
<SubSystem>Console</SubSystem>
@@ -329,6 +336,7 @@
329336
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
330337
<CompileAs>CompileAsC</CompileAs>
331338
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
339+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
332340
</ClCompile>
333341
<Link>
334342
<SubSystem>Console</SubSystem>

projects/VS2022/rres/rres_data_loading.vcxproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@
173173
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174174
<CompileAs>CompileAsC</CompileAs>
175175
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
176+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
176177
</ClCompile>
177178
<Link>
178179
<SubSystem>Console</SubSystem>
@@ -191,6 +192,7 @@
191192
<CompileAs>CompileAsC</CompileAs>
192193
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
193194
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
195+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
194196
</ClCompile>
195197
<Link>
196198
<SubSystem>Console</SubSystem>
@@ -208,6 +210,7 @@
208210
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
209211
<CompileAs>CompileAsC</CompileAs>
210212
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
213+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
211214
</ClCompile>
212215
<Link>
213216
<SubSystem>Console</SubSystem>
@@ -229,6 +232,7 @@
229232
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
230233
<CompileAs>CompileAsC</CompileAs>
231234
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
235+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
232236
</ClCompile>
233237
<Link>
234238
<SubSystem>Console</SubSystem>
@@ -255,6 +259,7 @@
255259
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
256260
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
257261
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
262+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
258263
</ClCompile>
259264
<Link>
260265
<SubSystem>Console</SubSystem>
@@ -279,6 +284,7 @@
279284
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
280285
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
281286
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
287+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
282288
</ClCompile>
283289
<Link>
284290
<SubSystem>Console</SubSystem>
@@ -301,6 +307,7 @@
301307
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
302308
<CompileAs>CompileAsC</CompileAs>
303309
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
310+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
304311
</ClCompile>
305312
<Link>
306313
<SubSystem>Console</SubSystem>
@@ -329,6 +336,7 @@
329336
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
330337
<CompileAs>CompileAsC</CompileAs>
331338
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
339+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
332340
</ClCompile>
333341
<Link>
334342
<SubSystem>Console</SubSystem>

projects/VS2022/rres/rres_load_image.vcxproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@
173173
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174174
<CompileAs>CompileAsC</CompileAs>
175175
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
176+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
176177
</ClCompile>
177178
<Link>
178179
<SubSystem>Console</SubSystem>
@@ -191,6 +192,7 @@
191192
<CompileAs>CompileAsC</CompileAs>
192193
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
193194
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
195+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
194196
</ClCompile>
195197
<Link>
196198
<SubSystem>Console</SubSystem>
@@ -208,6 +210,7 @@
208210
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
209211
<CompileAs>CompileAsC</CompileAs>
210212
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
213+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
211214
</ClCompile>
212215
<Link>
213216
<SubSystem>Console</SubSystem>
@@ -229,6 +232,7 @@
229232
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
230233
<CompileAs>CompileAsC</CompileAs>
231234
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
235+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
232236
</ClCompile>
233237
<Link>
234238
<SubSystem>Console</SubSystem>
@@ -255,6 +259,7 @@
255259
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
256260
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
257261
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
262+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
258263
</ClCompile>
259264
<Link>
260265
<SubSystem>Console</SubSystem>
@@ -279,6 +284,7 @@
279284
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
280285
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
281286
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
287+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
282288
</ClCompile>
283289
<Link>
284290
<SubSystem>Console</SubSystem>
@@ -301,6 +307,7 @@
301307
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
302308
<CompileAs>CompileAsC</CompileAs>
303309
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
310+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
304311
</ClCompile>
305312
<Link>
306313
<SubSystem>Console</SubSystem>
@@ -329,6 +336,7 @@
329336
<AdditionalIncludeDirectories>$(SolutionDir)..\..\src;$(SolutionDir)..\..\src\external;$(SolutionDir)..\..\..\raylib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
330337
<CompileAs>CompileAsC</CompileAs>
331338
<RemoveUnreferencedCodeData>true</RemoveUnreferencedCodeData>
339+
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
332340
</ClCompile>
333341
<Link>
334342
<SubSystem>Console</SubSystem>

src/rres-raylib.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ extern "C" { // Prevents name mangling of functions
8888

8989
// rres data loading to raylib data structures
9090
// NOTE: Chunk data must be provided uncompressed/unencrypted
91-
RLAPI void *LoadDataFromResource(rresResourceChunk chunk, int *size); // Load raw data from rres resource chunk
91+
RLAPI void *LoadDataFromResource(rresResourceChunk chunk, unsigned int *size); // Load raw data from rres resource chunk
9292
RLAPI char *LoadTextFromResource(rresResourceChunk chunk); // Load text data from rres resource chunk
9393
RLAPI Image LoadImageFromResource(rresResourceChunk chunk); // Load Image data from rres resource chunk
9494
RLAPI Wave LoadWaveFromResource(rresResourceChunk chunk); // Load Wave data from rres resource chunk
@@ -174,7 +174,7 @@ static unsigned int *ComputeMD5(unsigned char *data, int size);
174174
//----------------------------------------------------------------------------------
175175

176176
// Load raw data from rres resource
177-
void *LoadDataFromResource(rresResourceChunk chunk, int *size)
177+
void *LoadDataFromResource(rresResourceChunk chunk, unsigned int *size)
178178
{
179179
void *rawData = NULL;
180180

@@ -359,8 +359,8 @@ Font LoadFontFromResource(rresResourceMulti multi)
359359
{
360360
if (rresGetDataType(multi.chunks[0].info.type) == RRES_DATA_RAW) // Raw font file
361361
{
362-
int dataSize = 0;
363-
unsigned char *rawData = LoadDataFromResourceChunk(multi.chunks[0], dataSize);
362+
unsigned int dataSize = 0;
363+
unsigned char *rawData = LoadDataFromResourceChunk(multi.chunks[0], &dataSize);
364364

365365
font = LoadFontFromMemory(GetExtensionFromProps(multi.chunks[0].data.props[1], multi.chunks[0].data.props[2]), rawData, dataSize, 32, NULL, 0);
366366

@@ -369,7 +369,7 @@ Font LoadFontFromResource(rresResourceMulti multi)
369369
if (rresGetDataType(multi.chunks[0].info.type) == RRES_DATA_LINK) // Link to external font file
370370
{
371371
// Get raw data from external linked file
372-
int dataSize = 0;
372+
unsigned int dataSize = 0;
373373
void *rawData = LoadDataFromResourceLink(multi.chunks[0], &dataSize);
374374

375375
// Load image from linked file data
@@ -395,7 +395,7 @@ Mesh LoadMeshFromResource(rresResourceMulti multi)
395395
// TODO: Support externally linked mesh resource?
396396

397397
// Mesh resource consist of (n) chunks:
398-
for (int i = 0; i < multi.count; i++)
398+
for (unsigned int i = 0; i < multi.count; i++)
399399
{
400400
if ((multi.chunks[0].info.compType == RRES_COMP_NONE) && (multi.chunks[0].info.cipherType == RRES_CIPHER_NONE))
401401
{
@@ -494,7 +494,7 @@ Mesh LoadMeshFromResource(rresResourceMulti multi)
494494
// raylib expects 1 components per index and unsigned short vertex format
495495
if ((multi.chunks[i].data.props[2] == 1) && (multi.chunks[i].data.props[3] == RRES_VERTEX_FORMAT_USHORT))
496496
{
497-
mesh.indices = (unsigned char *)RL_CALLOC(multi.chunks[i].data.props[0], sizeof(unsigned short));
497+
mesh.indices = (unsigned short *)RL_CALLOC(multi.chunks[i].data.props[0], sizeof(unsigned short));
498498
memcpy(mesh.indices, multi.chunks[i].data.raw, multi.chunks[i].data.props[0]*sizeof(unsigned short));
499499
}
500500
else RRES_LOG("RRES: WARNING: MESH: Vertex attribute index not valid, componentCount/vertexFormat do not fit\n");

src/rres.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -833,7 +833,7 @@ RRESAPI rresResourceChunkInfo *rresLoadResourceChunkInfoAll(const char *fileName
833833
infos = (rresResourceChunkInfo *)RRES_CALLOC(header.chunkCount, sizeof(rresResourceChunkInfo));
834834
count = header.chunkCount;
835835

836-
for (int i = 0; i < count; i++)
836+
for (unsigned int i = 0; i < count; i++)
837837
{
838838
fread(&infos[i], sizeof(rresResourceChunkInfo), 1, rresFile); // Read resource chunk info
839839

@@ -970,7 +970,7 @@ int rresGetResourceId(rresCentralDir dir, const char *fileName)
970970

971971
for (unsigned int i = 0, len = 0; i < dir.count; i++)
972972
{
973-
len = strlen(fileName);
973+
len = (unsigned int)strlen(fileName);
974974

975975
// NOTE: entries[i].fileName is NULL terminated and padded to 4-bytes
976976
if (strncmp((const char *)dir.entries[i].fileName, fileName, len) == 0)

0 commit comments

Comments
 (0)