Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r67440 - trunk/boost/archive
From: ramey_at_[hidden]
Date: 2010-12-23 20:26:59


Author: ramey
Date: 2010-12-23 20:26:58 EST (Thu, 23 Dec 2010)
New Revision: 67440
URL: http://svn.boost.org/trac/boost/changeset/67440

Log:
attempt to make binary archive created with versions < 1.42 readable
Text files modified:
   trunk/boost/archive/basic_archive.hpp | 2 +-
   trunk/boost/archive/basic_binary_iarchive.hpp | 13 +++++++++++++
   2 files changed, 14 insertions(+), 1 deletions(-)

Modified: trunk/boost/archive/basic_archive.hpp
==============================================================================
--- trunk/boost/archive/basic_archive.hpp (original)
+++ trunk/boost/archive/basic_archive.hpp 2010-12-23 20:26:58 EST (Thu, 23 Dec 2010)
@@ -254,7 +254,7 @@
 #define BOOST_ARCHIVE_STRONG_TYPEDEF(T, D) \
     class D : public T { \
     public: \
- explicit D(const T t) : T(t){} \
+ explicit D(const T tt) : T(tt){} \
     }; \
 /**/
 

Modified: trunk/boost/archive/basic_binary_iarchive.hpp
==============================================================================
--- trunk/boost/archive/basic_binary_iarchive.hpp (original)
+++ trunk/boost/archive/basic_binary_iarchive.hpp 2010-12-23 20:26:58 EST (Thu, 23 Dec 2010)
@@ -82,6 +82,19 @@
     // binary files don't include the optional information
     void load_override(class_id_optional_type & /* t */, int){}
 
+ void load_override(tracking_type & t, int /*version*/){
+ library_version_type lvt = this->get_library_version();
+ if(boost::archive::library_version_type(6) < lvt){
+ int_least8_t x=0;
+ * this->This() >> x;
+ t = boost::archive::tracking_type(x);
+ }
+ else{
+ bool x=0;
+ * this->This() >> x;
+ t = boost::archive::tracking_type(x);
+ }
+ }
     void load_override(class_id_type & t, int version){
         library_version_type lvt = this->get_library_version();
         if(boost::archive::library_version_type(7) < lvt){


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk