Blob Blame History Raw
diff --git a/src/3rdparty/assimp/code/Bitmap.cpp b/src/3rdparty/assimp/code/Bitmap.cpp
index 30b5744..e1f58b0 100644
--- a/src/3rdparty/assimp/code/Bitmap.cpp
+++ b/src/3rdparty/assimp/code/Bitmap.cpp
@@ -80,10 +80,15 @@ namespace Assimp {
 		}
 	}
 
-	template<typename T>
-	inline std::size_t Copy(uint8_t* data, T& field) {
-		std::memcpy(data, &AI_BE(field), sizeof(field)); return sizeof(field);
-	}
+        template<typename T>
+        inline std::size_t Copy(uint8_t* data, T& field) {
+#ifdef AI_BUILD_BIG_ENDIAN
+            T field_swapped=AI_BE(field);
+            std::memcpy(data, &field_swapped, sizeof(field)); return sizeof(field);
+#else
+            std::memcpy(data, &AI_BE(field), sizeof(field)); return sizeof(field);
+#endif
+        }
 
 	void Bitmap::WriteHeader(Header& header, IOStream* file) {
 		uint8_t data[Header::header_size];