view LightClone/Source/Util.cpp @ 67:8e7ebab350e7

Clean up memory leaks
author koryspansel
date Fri, 07 Oct 2011 01:15:28 -0700
parents 00d17d8f407d
children
line wrap: on
line source

/*
 * Util
 */

#include "Util.h"
#include <stdio.h>

/*
 * LoadFile
 */
Buffer LoadFile(const char* pName)
{
	uint8* pData = NULL;
	uint32 nSize = 0;

	FILE* pFile = fopen(pName, "rt");
	if(pFile)
	{
		fseek(pFile, 0, SEEK_END);
		nSize = (uint32)ftell(pFile);
		fseek(pFile, 0, SEEK_SET);

		if(nSize > 0)
		{
			pData = new uint8[nSize];

			uint32 nCount = (uint32)fread(pData, sizeof(uint8), nSize, pFile);
			if(nCount != nSize)
			{
				delete[] pData;

				pData = NULL;
				nSize = 0;
			}
		}

		fclose(pFile);
	}

	return Buffer(pData, nSize, false);
}