views:

351

answers:

1

I am getting this error, I have no clue where:

OGRE EXCEPTION(2:InvalidParametersException): Header chunck didn't match either endian: Corrupted stream? in Serializer::determineEdianness at f:\codingextra\ogre\shoggoth_vc9\ogre\ogremain\src\ogreserializer.cpp (line 90)

I am using Visual Studio 2008. I tried to gvim the file on the f: drive mentioned, but apparently it doesn't exist? I also tried to cd to the dir and it says it doesnt exist. Any insight?

+2  A: 

You're using a pre-compiled version of Ogre. If you want to debug it, you might want to download the Ogre sources and install them. It's clear, though, that the Serializer class is reading some data that you've given it that it expects to be in a certain format. Specifically, it's looking for a flag in the header that marks whether the data is little- or big-endian. (Least- or most-significant byte first.)

You could also try catching the exception wherever your code calls Ogre, which will help you narrow down the problem code.

greyfade
ok, where would i put the source after it is compiled?also, what would be the most effective way to try and catch this error?
jimi hendrix
s/source/libraries and stuff/
jimi hendrix
Just build the sources and set your program to link to the libraries *in that directory*. I've given the most effective means to catch it: put a try/catch block wherever you're loading meshes and catch the exception you're getting. It carries most of the information you need.
greyfade