QUILLET Jean-Charles wrote:
Hi,
I've been using the boost serialization for quite a few projects and it works realy well in many different situations. But today I'm facing a problem, I find very difficult to solve. I serialize objects in a XML archive for a project working on linux and windows using boost 1.38. And oddly my files are not compatible between the two plateforms. When I try to deserialize an object saved on a different plateform, the application crashes despite the fact that I catch possible exceptions. When I compare the two files, it seems that I have a difference of class_id Here is a sample of what I have on linux:
<pNode class_id="6" class_name="Group" tracking_level="1" version="0" object_id="_1"> <Node class_id="5" tracking_level="1" version="0" object_id="_2"></Node> <noeuds class_id="7" tracking_level="0" version="0"> <count>0</count>
0 </noeuds> </pNode> .And the same object on windows:
<pNode class_id="6" class_name="Group" tracking_level="1" version="0" object_id="_1"> <Node class_id="7" tracking_level="1" version="0" object_id="_2"></Node> <noeuds class_id="8" tracking_level="0" version="0"> <count>0</count>
0 </noeuds> </pNode> .In my file on windows, I don't have any object of a class_id="5", weird.
Does any one know any reason for this behaviour ? Any idea greatly appreciated.
This is a new one. They should be absolutely compatible. Let us know when you find the source of this. Robert Ramey