Opened 16 years ago

Closed 16 years ago

#685 closed Bugs (Works For Me)

Deserialization broken for Windows MingW.

Reported by: nobody Owned by: Robert Ramey
Milestone: Component: serialization
Version: None Severity:
Keywords: Cc:

Description

I'm attemptting to deserialize a piece of XML, using
the following code:

stringstream ss(stringstream::in | stringstream::out);
        ss << beliefsParam; 
        assert(ss.good());
        
        try
        {
          boost::archive::xml_iarchive ia(ss);
          ia.register_type(static_cast<BBSettings
*>(NULL));
          ia >> BOOST_SERIALIZATION_NVP(b);
        }
        catch( boost::archive::archive_exception e )
        {
          cout << "DESERIALIZATION ERROR: " << e.what();
          exit(0);
        }

This works great under OS-X and Ubuntu, but under
Windows (MingW environment) I get a SIGTRAP:

Program received signal SIGTRAP, Trace/breakpoint trap.
0x7c901231 in ?? ()
(gdb) bt
#0  0x7c901231 in ?? ()
#1  0x7c96cd80 in ?? ()
#2  0x7c96df66 in ?? ()
#3  0x7c94a5d0 in ?? ()
#4  0x7c9268ad in ?? ()
#5  0x77bfc2de in _libkernel32_a_iname ()
#6  0x6f6494a5 in _libwsock32_a_iname ()
#7  0x6f696148 in _libwsock32_a_iname ()
#8  0x6f696e17 in _libwsock32_a_iname ()
#9  0x6f6590b8 in _libwsock32_a_iname ()
#10 0x6f664eb1 in _libwsock32_a_iname ()
#11 0x0049321e in
boost::archive::detail::iserializer<boost::archive::xml_iarchi
ve, std::vector<std::string,
std::allocator<std::string> > >::load_object_data(b
oost::archive::detail::basic_iarchive&, void*,
unsigned) const (this=0x4e165c,
    ar=@0x22fc60, x=0x22f414, file_version=0)
    at
D:/Boost/include/boost-1_33_1/boost/archive/detail/iserializer.hpp:96
#12 0x6f642362 in _libwsock32_a_iname ()
#13 0x00491517 in
boost::archive::detail::iserializer<boost::archive::xml_iarchi
ve,
Employee>::load_object_data(boost::archive::detail::basic_iarchive&,
void*,
unsigned) const (this=0x4e1608, ar=@0x22fc60,
x=0x22f3c0, file_version=0)
    at
D:/Boost/include/boost-1_33_1/boost/serialization/nvp.hpp:54
#14 0x6f642362 in _libwsock32_a_iname ()
#15 0x00492d49 in
boost::archive::detail::iserializer<boost::archive::xml_iarchi
---Type <return> to continue, or q <return> to quit---
ve, std::vector<Employee, std::allocator<Employee> >
>::load_object_data(boost::
archive::detail::basic_iarchive&, void*, unsigned)
const (this=0x4e1650,
    ar=@0x22fc60, x=0x22fd7c, file_version=0)
    at
D:/Boost/include/boost-1_33_1/boost/archive/detail/iserializer.hpp:145
#16 0x6f642362 in _libwsock32_a_iname ()
#17 0x00482579 in void
SchedulerBeliefs::serialize<boost::archive::xml_iarchive>
(boost::archive::xml_iarchive&, unsigned)
(this=0x22fd50, ar=@0x22fc60,
    version=0)
    at
D:/Boost/include/boost-1_33_1/boost/archive/detail/iserializer.hpp:145
#18 0x0049004f in
boost::archive::detail::iserializer<boost::archive::xml_iarchi
ve,
SchedulerBeliefs>::load_object_data(boost::archive::detail::basic_iarchive&,
 void*, unsigned) const (this=0x4e15e4, ar=@0x22fc60,
x=0x22fd50,
    file_version=0)
    at
D:/Boost/include/boost-1_33_1/boost/serialization/serialization.hpp:74
#19 0x6f642362 in _libwsock32_a_iname ()
#20 0x00406438 in main (argc=2, argv=0x3d2880)
    at
D:/Boost/include/boost-1_33_1/boost/archive/detail/iserializer.hpp:145
(gdb)

Change History (4)

comment:1 by Robert Ramey, 16 years ago

Logged In: YES 
user_id=396141

Hmm - should work ok as far as I can tell.  I can't see any 
problem.  Note that mingw is tested in a regular basis. 
Sorry I can't be of more help.

Robert Ramey

comment:2 by Robert Ramey, 16 years ago

Logged In: YES 
user_id=396141

Thank you for submitting a bug report to BOOST

comment:3 by sf-robot, 16 years ago

Logged In: YES 
user_id=1312539

This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).

comment:4 by sf-robot, 16 years ago

Status: assignedclosed
Note: See TracTickets for help on using tickets.