diff options
Diffstat (limited to 'libs/serialization/src')
-rw-r--r-- | libs/serialization/src/basic_archive.cpp | 6 | ||||
-rw-r--r-- | libs/serialization/src/basic_iarchive.cpp | 10 | ||||
-rw-r--r-- | libs/serialization/src/basic_oarchive.cpp | 4 | ||||
-rw-r--r-- | libs/serialization/src/basic_xml_grammar.ipp | 2 | ||||
-rw-r--r-- | libs/serialization/src/extended_type_info.cpp | 2 | ||||
-rw-r--r-- | libs/serialization/src/extended_type_info_typeid.cpp | 2 |
6 files changed, 11 insertions, 15 deletions
diff --git a/libs/serialization/src/basic_archive.cpp b/libs/serialization/src/basic_archive.cpp index 8baf17831..3f6c3e353 100644 --- a/libs/serialization/src/basic_archive.cpp +++ b/libs/serialization/src/basic_archive.cpp @@ -70,11 +70,13 @@ BOOST_ARCHIVE_SIGNATURE(){ // 8 - Boost 1.44 // separated version_type into library_version_type and class_version_type // changed version_type to be stored as 8 bits. -// 10- fixed base64 output/input. +// 10- fixed base64 output/input. +// 11- not changes +// 12- improved serialization of collections BOOST_ARCHIVE_DECL(library_version_type) BOOST_ARCHIVE_VERSION(){ - return library_version_type(11); + return library_version_type(12); } } // namespace archive diff --git a/libs/serialization/src/basic_iarchive.cpp b/libs/serialization/src/basic_iarchive.cpp index 3a2469006..9e25092ae 100644 --- a/libs/serialization/src/basic_iarchive.cpp +++ b/libs/serialization/src/basic_iarchive.cpp @@ -183,7 +183,6 @@ class basic_iarchive_impl { m_archive_library_version(BOOST_ARCHIVE_VERSION()), m_flags(flags) {} - ~basic_iarchive_impl(){} void set_library_version(library_version_type archive_library_version){ m_archive_library_version = archive_library_version; } @@ -228,7 +227,6 @@ class basic_iarchive_impl { const basic_pointer_iserializer * (*finder)( const boost::serialization::extended_type_info & type ) - ); }; @@ -252,8 +250,8 @@ basic_iarchive_impl::reset_object_address( // but the code may work anyway. Naturally, a bad practice on the part // of the programmer but we can't detect it - as above. So maybe we // can save a few more people from themselves as above. - object_id_type i; - for(i = m_moveable_objects.recent; i < m_moveable_objects.end; ++i){ + object_id_type i = m_moveable_objects.recent; + for(; i < m_moveable_objects.end; ++i){ if(old_address == object_id_vector[i].address) break; } @@ -532,9 +530,7 @@ basic_iarchive::basic_iarchive(unsigned int flags) : BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_iarchive::~basic_iarchive() -{ - delete pimpl; -} +{} BOOST_ARCHIVE_DECL(void) basic_iarchive::set_library_version(library_version_type archive_library_version){ diff --git a/libs/serialization/src/basic_oarchive.cpp b/libs/serialization/src/basic_oarchive.cpp index 840955b78..2ce98c6d5 100644 --- a/libs/serialization/src/basic_oarchive.cpp +++ b/libs/serialization/src/basic_oarchive.cpp @@ -417,9 +417,7 @@ basic_oarchive::basic_oarchive(unsigned int flags) BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_oarchive::~basic_oarchive() -{ - delete pimpl; -} +{} BOOST_ARCHIVE_DECL(void) basic_oarchive::save_object( diff --git a/libs/serialization/src/basic_xml_grammar.ipp b/libs/serialization/src/basic_xml_grammar.ipp index 011bba735..28be525ca 100644 --- a/libs/serialization/src/basic_xml_grammar.ipp +++ b/libs/serialization/src/basic_xml_grammar.ipp @@ -457,7 +457,7 @@ void basic_xml_grammar<CharType>::init(IStream & is){ template<class CharType> void basic_xml_grammar<CharType>::windup(IStream & is){ - if(is.fail()) + if(is.fail() || is.eof()) return; // uh-oh - don't throw exception from code called by a destructor ! // so just ignore any failure. diff --git a/libs/serialization/src/extended_type_info.cpp b/libs/serialization/src/extended_type_info.cpp index 2efbefc8f..48bbc5627 100644 --- a/libs/serialization/src/extended_type_info.cpp +++ b/libs/serialization/src/extended_type_info.cpp @@ -25,7 +25,7 @@ namespace std{ using ::strcmp; } #endif -#include <boost/detail/no_exceptions_support.hpp> +#include <boost/core/no_exceptions_support.hpp> #include <boost/serialization/singleton.hpp> #include <boost/serialization/force_include.hpp> diff --git a/libs/serialization/src/extended_type_info_typeid.cpp b/libs/serialization/src/extended_type_info_typeid.cpp index 463287aff..8d970309e 100644 --- a/libs/serialization/src/extended_type_info_typeid.cpp +++ b/libs/serialization/src/extended_type_info_typeid.cpp @@ -15,7 +15,7 @@ #include <typeinfo> #include <cstddef> // NULL -#include <boost/detail/no_exceptions_support.hpp> +#include <boost/core/no_exceptions_support.hpp> #include <boost/serialization/singleton.hpp> |