From 20d391764c9d6921a92d21f03805ad06a9574540 Mon Sep 17 00:00:00 2001 From: "admin@omencraft.com" Date: Mon, 31 Oct 2011 02:56:12 +0000 Subject: denotch map converter can now parse without creating segfaults or unknown tag errors. git-svn-id: http://mc-server.googlecode.com/svn/trunk@31 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- converter/cNBTData.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'converter/cNBTData.cpp') diff --git a/converter/cNBTData.cpp b/converter/cNBTData.cpp index ed655430b..0b40f3466 100644 --- a/converter/cNBTData.cpp +++ b/converter/cNBTData.cpp @@ -46,7 +46,7 @@ cNBTData::cNBTData( char* a_Buffer, unsigned int a_BufferSize ) tm = false; //tm to true will print more information for test mode if (m_BufferSize == 82659) { - tm = true; +// tm = true; } m_CurrentCompound = this; @@ -552,12 +552,26 @@ void cNBTData::ParseList( bool a_bNamed ) OpenList( Name ); for(int i = 0; i < Length && m_Index < m_BufferSize; i++) { + + if( (int)TagType == 6 ) { + + cNBTData::ParseDouble( false ); + + } else if( (int)TagType == 5 ) { + cNBTData::ParseFloat( false ); + } else + + if( m_ParseFunctions[ TagType ] ) { (*this.*m_ParseFunctions[ TagType ] )(false); m_Index++; } } + if (tm) { + printf("List Done Name, tag, length: %s, %i, %i\n", Name.c_str(), (int)TagType, Length); + } + CloseList(); } -- cgit v1.2.3