Beispiel #1
0
bool CGenericParser2::Parse(char **dataPtr, bool cleanFirst, bool writeable)
{
	CTextPool	*topPool;

#ifdef _XBOX
	// Parsers are temporary structures.  They exist mainly at load time.
	extern void Z_SetNewDeleteTemporary(bool bTemp);
	Z_SetNewDeleteTemporary(true);
#endif

	if (cleanFirst)
	{
		Clean();
	}

	if (!mTextPool)
	{
		mTextPool = new CTextPool;
	}

	SetWriteable(writeable);
	mTopLevel.SetWriteable(writeable);
	topPool = mTextPool;
	bool ret = mTopLevel.Parse(dataPtr, &topPool);

#ifdef _XBOX
	Z_SetNewDeleteTemporary(false);
#endif

	return ret;
}
void CGenericParser2::Parse(char **dataPtr, bool cleanFirst, bool writeable)
{
	CTextPool	*topPool;

	if (cleanFirst)
	{
		Clean();

		mTextPool = new CTextPool;
	}

	SetWriteable(writeable);
	mTopLevel.SetWriteable(writeable);
	topPool = mTextPool;
	mTopLevel.Parse(dataPtr, &topPool);
}