I have been able to test with a string stream; the bug does not occur.

 

That is, this code produces the bug:

 

            std::ifstream ifs("container.mob");

boost::archive::text_iarchive ia(ifs); 

 

ia & MyObject;

 

while the following does not:

 

            std::ifstream ifs("container.mob");

 

            std::ostringstream tmp;

           

tmp << ifs.rdbuf();

 

            std::istringstream is(tmp.str());

 

boost::archive::text_iarchive ia(is); 

 

ia & MyObject;

 

 

a)       try using a different stream buffer strstream

 

 

So do you have any clue, Robert ?? Clearly the problem has to do with buffering somewhere….

 

Jean-Noël