X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FPackets%2FPacketImpl.ct;h=93a757c1379702cc60de76206dfa646307a30bb3;hb=84f14a42f9993e186c7897ce0db021300e0a2d48;hp=7dc7cb97f079fc463beeec99789bb9145377269a;hpb=943a6b0973f66bc699c6e7b404da256145e93acf;p=senf.git diff --git a/senf/Packets/PacketImpl.ct b/senf/Packets/PacketImpl.ct index 7dc7cb9..93a757c 100644 --- a/senf/Packets/PacketImpl.ct +++ b/senf/Packets/PacketImpl.ct @@ -35,16 +35,18 @@ senf::detail::AnnotationRegistry::RegistrationProxy senf::detail::AnnotationRegistry::Entry::proxy_; template -senf::detail::AnnotationRegistry::key_t +senf::detail::AnnotationRegistry::key_type senf::detail::AnnotationRegistry::Entry::key_; template prefix_ void * senf::detail::PacketImpl::complexAnnotation() { - AnnotationRegistry::key_t key (AnnotationRegistry::lookup()); + AnnotationRegistry::key_type key (AnnotationRegistry::lookup()); void * rv (complexAnnotation(key)); #ifndef SENF_PACKET_NO_COMPLEX_ANNOTATIONS if (! rv) { + while (complexAnnotations_.size() < ComplexAnnotations::size_type(-key)) + complexAnnotations_.push_back(0); complexAnnotations_.replace(-key-1, new AnnotationRegistry::Entry()); rv = complexAnnotations_[-key-1].get(); }