docu fix for Packet.as<>()
[senf.git] / Packets / VectorParser.cti
index b7040bc..60a7924 100644 (file)
@@ -173,7 +173,7 @@ prefix_ void senf::VectorParser<ElementParser,AuxPolicy>::resize(size_type n, Va
 template <class ElementParser, class AuxPolicy>
 prefix_ senf::VectorParser_Container<ElementParser,AuxPolicy>::
 VectorParser_Container(parser_type const & vector)
-    : AuxPolicy(vector), state_ (vector.state()), 
+    : AuxPolicy::WrapperPolicy(static_cast<AuxPolicy const &>(vector)), state_ (vector.state()), 
       i_ (std::distance(data().begin(),vector.i()))
 {}
 
@@ -247,8 +247,8 @@ prefix_ void senf::VectorParser_Container<ElementParser,AuxPolicy>::insert(itera
 template <class ElementParser, class AuxPolicy>
 prefix_ void senf::VectorParser_Container<ElementParser,AuxPolicy>::erase(iterator pos, size_type n)
 {
-    data().erase(pos.raw(),boost::next(pos.raw(),n*ElementParser::fixed_bytes));
     setSize(size()-n);
+    data().erase(pos.raw(),boost::next(pos.raw(),n*ElementParser::fixed_bytes));
 }
 
 template <class ElementParser, class AuxPolicy>