Fixed an error bug
This commit is contained in:
36
src/asset/asset.c
Normal file
36
src/asset/asset.c
Normal file
@@ -0,0 +1,36 @@
|
||||
/**
|
||||
* Copyright (c) 2025 Dominic Masters
|
||||
*
|
||||
* This software is released under the MIT License.
|
||||
* https://opensource.org/licenses/MIT
|
||||
*/
|
||||
|
||||
#include "asset.h"
|
||||
#include "assetmanager.h"
|
||||
#include "util/memory.h"
|
||||
#include "assert/assert.h"
|
||||
#include "console/console.h"
|
||||
|
||||
errorret_t assetInit(asset_t *asset, const char_t *filename) {
|
||||
assertNotNull(asset, "Asset cannot be NULL.");
|
||||
assertNotNull(filename, "Filename cannot be NULL.");
|
||||
assertTrue(strlen(filename) < FILENAME_MAX, "Filename too long.");
|
||||
assertTrue(strlen(filename) > 0, "Filename cannot be empty.");
|
||||
|
||||
memoryZero(asset, sizeof(asset_t));
|
||||
memoryCopy(asset->filename, filename, strlen(filename) + 1);
|
||||
|
||||
// Initialze the reference list.
|
||||
refListInit(
|
||||
&asset->refList,
|
||||
asset->refListArray,
|
||||
ASSET_REFERENCE_COUNT_MAX
|
||||
);
|
||||
|
||||
asset->file = zip_fopen(ASSET_MANAGER.zip, filename, 0);
|
||||
if(asset->file == NULL) errorThrow("Failed to open asset file: %s", filename);
|
||||
|
||||
consolePrint("Initialized asset: %s", filename);
|
||||
|
||||
errorOk();
|
||||
}
|
||||
Reference in New Issue
Block a user