From b29f38e30f5d52847b177d0d1a071aa08a72370d Mon Sep 17 00:00:00 2001 From: Amorilia <amorilia@users.sourceforge.net> Date: Fri, 6 Apr 2007 15:53:45 +0000 Subject: [PATCH] niflib: * gcc BIG_ENDIAN and LITTLE_ENDIAN name clash fix --- SConscript | 2 +- include/nif_basic_types.h | 8 ++++---- src/NIF_IO.cpp | 4 ++-- src/gen/Header.cpp | 5 ----- src/niflib.cpp | 6 +----- 5 files changed, 8 insertions(+), 17 deletions(-) diff --git a/SConscript b/SConscript index 1d6077fb..c14a6de7 100644 --- a/SConscript +++ b/SConscript @@ -11,7 +11,7 @@ else: # generate code -os.system('cd ' + os.path.join('..', 'docsys') + ' && python nifxml_niflib.py -p ' + os.path.join('..' , 'niflib')) +os.system('cd ' + os.path.join('..', '..', 'docsys') + ' && python nifxml_niflib.py -p ' + os.path.join('..' , 'niflib')) # list source files diff --git a/include/nif_basic_types.h b/include/nif_basic_types.h index ef1b7191..e82bb2af 100644 --- a/include/nif_basic_types.h +++ b/include/nif_basic_types.h @@ -30,8 +30,8 @@ typedef unsigned char byte; /*! Specifies the low-level nature of the storage process */ enum EndianType { - BIG_ENDIAN = 0, /*!< Big Endian storage, such as that used by PowerPC processors */ - LITTLE_ENDIAN = 1 /*!< Little Endian storage, such as that used by x86 processors */ + NIF_BIG_ENDIAN = 0, /*!< Big Endian storage, such as that used by PowerPC processors */ + NIF_LITTLE_ENDIAN = 1 /*!< Little Endian storage, such as that used by x86 processors */ }; //--Structures--// @@ -41,12 +41,12 @@ enum EndianType { * the way an existing file was stored. */ struct NifInfo { - NifInfo() : version(VER_4_0_0_2), userVersion(0), userVersion2(0), endian(LITTLE_ENDIAN) {} + NifInfo() : version(VER_4_0_0_2), userVersion(0), userVersion2(0), endian(NIF_LITTLE_ENDIAN) {} NifInfo( unsigned version, unsigned userVersion = 0, unsigned userVersion2 = 0) { this->version = version; this->userVersion = userVersion; this->userVersion2 = userVersion2; - endian = LITTLE_ENDIAN; + endian = NIF_LITTLE_ENDIAN; } unsigned version; unsigned userVersion; diff --git a/src/NIF_IO.cpp b/src/NIF_IO.cpp index ef9b53dd..04e41708 100644 --- a/src/NIF_IO.cpp +++ b/src/NIF_IO.cpp @@ -24,9 +24,9 @@ EndianType DetectEndianType() { short r = *(short *)test; if ( r == 1 ) { - return LITTLE_ENDIAN; + return NIF_LITTLE_ENDIAN; } else { - return BIG_ENDIAN; + return NIF_BIG_ENDIAN; } } diff --git a/src/gen/Header.cpp b/src/gen/Header.cpp index 3ca3f592..7c2df9f7 100644 --- a/src/gen/Header.cpp +++ b/src/gen/Header.cpp @@ -92,11 +92,6 @@ NifInfo Header::Read( istream& in ) { //Fill out and return NifInfo structure. info.userVersion = userVersion; - if ( endianType == 0) { - info.endian = BIG_ENDIAN; - } else { - info.endian = LITTLE_ENDIAN; - } info.endian = EndianType(endianType); info.creator = creator.str; info.exportInfo1 = exportInfo1.str; diff --git a/src/niflib.cpp b/src/niflib.cpp index d0784023..adb94311 100644 --- a/src/niflib.cpp +++ b/src/niflib.cpp @@ -162,11 +162,7 @@ vector<NiObjectRef> ReadNifList( istream & in, NifInfo * info ) { info->version = header.version; info->userVersion = header.userVersion; info->userVersion2 = header.userVersion2; - if ( header.endianType == 0) { - info->endian = BIG_ENDIAN; - } else { - info->endian = LITTLE_ENDIAN; - } + info->endian = EndianType(header.endianType); info->creator = header.creator.str; info->exportInfo1 = header.exportInfo1.str; info->exportInfo2 = header.exportInfo2.str; -- GitLab