Fix incorrect check for invalid assets
parent
e32fd0fc55
commit
789d1b2577
|
@ -50,7 +50,7 @@ bool load_from_rres(const char* file, Assets_t* assets)
|
||||||
rresResourceChunk chunk = rresLoadResourceChunk(file, res_id); // Hardcoded
|
rresResourceChunk chunk = rresLoadResourceChunk(file, res_id); // Hardcoded
|
||||||
bool okay = false;
|
bool okay = false;
|
||||||
|
|
||||||
if (chunk.info.id == res_id)
|
if (chunk.info.baseSize > 0)
|
||||||
{
|
{
|
||||||
FILE* in_file = fmemopen(chunk.data.raw, chunk.info.baseSize, "rb");
|
FILE* in_file = fmemopen(chunk.data.raw, chunk.info.baseSize, "rb");
|
||||||
|
|
||||||
|
|
|
@ -91,7 +91,7 @@ Texture2D* add_texture_rres(Assets_t* assets, const char* name, const char* file
|
||||||
rresResourceChunk chunk = rresLoadResourceChunk(rres_file->fname, res_id);
|
rresResourceChunk chunk = rresLoadResourceChunk(rres_file->fname, res_id);
|
||||||
|
|
||||||
Texture2D* out_tex = NULL;
|
Texture2D* out_tex = NULL;
|
||||||
if (chunk.info.id == res_id)
|
if (chunk.info.baseSize > 0)
|
||||||
{
|
{
|
||||||
//Expect RAW type of png extension
|
//Expect RAW type of png extension
|
||||||
Image image = LoadImageFromMemory(GetFileExtension(filename), chunk.data.raw, chunk.info.baseSize);
|
Image image = LoadImageFromMemory(GetFileExtension(filename), chunk.data.raw, chunk.info.baseSize);
|
||||||
|
@ -319,16 +319,19 @@ LevelPack_t* uncompress_level_pack(Assets_t* assets, const char* name, const cha
|
||||||
LevelPack_t* add_level_pack_rres(Assets_t* assets, const char* name, const char* filename, const RresFileInfo_t* rres_file)
|
LevelPack_t* add_level_pack_rres(Assets_t* assets, const char* name, const char* filename, const RresFileInfo_t* rres_file)
|
||||||
{
|
{
|
||||||
int res_id = rresGetResourceId(rres_file->dir, filename);
|
int res_id = rresGetResourceId(rres_file->dir, filename);
|
||||||
|
|
||||||
rresResourceChunk chunk = rresLoadResourceChunk(rres_file->fname, res_id);
|
rresResourceChunk chunk = rresLoadResourceChunk(rres_file->fname, res_id);
|
||||||
|
|
||||||
LevelPack_t* pack = NULL;
|
LevelPack_t* pack = NULL;
|
||||||
if ( chunk.info.id == res_id)
|
if (chunk.info.baseSize > 0 && strcmp(".lpk", (const char*)(chunk.data.props + 1)) == 0)
|
||||||
{
|
{
|
||||||
FILE* f_in = fmemopen(chunk.data.raw, chunk.info.baseSize, "rb");
|
FILE* f_in = fmemopen(chunk.data.raw, chunk.info.baseSize, "rb");
|
||||||
pack = add_level_pack_zst(assets, name, f_in);
|
pack = add_level_pack_zst(assets, name, f_in);
|
||||||
fclose(f_in);
|
fclose(f_in);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("Cannot load level pack for %s\n", name);
|
||||||
|
}
|
||||||
rresUnloadResourceChunk(chunk);
|
rresUnloadResourceChunk(chunk);
|
||||||
return pack;
|
return pack;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue