diff --git a/io/io/src/TStreamerInfoActions.cxx b/io/io/src/TStreamerInfoActions.cxx index 812237c92fe1d..9c9e76740eba4 100644 --- a/io/io/src/TStreamerInfoActions.cxx +++ b/io/io/src/TStreamerInfoActions.cxx @@ -1693,7 +1693,9 @@ namespace TStreamerInfoActions ESelectLooper SelectLooper(TVirtualCollectionProxy &proxy) { - if ( (proxy.GetCollectionType() == ROOT::kSTLvector) || (proxy.GetProperties() & TVirtualCollectionProxy::kIsEmulated) ) { + if ( (proxy.GetProperties() & TVirtualCollectionProxy::kIsEmulated) ) { + return kVectorLooper; + } else if ( (proxy.GetCollectionType() == ROOT::kSTLvector)) { if (proxy.GetProperties() & TVirtualCollectionProxy::kCustomAlloc) return kGenericLooper; else @@ -2647,6 +2649,8 @@ namespace TStreamerInfoActions template static INLINE_TEMPLATE_ARGS Int_t ReadCollectionBasicType(TBuffer &buf, void *addr, const TConfiguration *conf) { + //TODO: Check whether we can implement this without loading the data in + // a temporary variable and whether this is noticeably faster. return ReadNumericalCollection >(buf,addr,conf); }