bugfix: set output size to 0 in case of special events and absent output
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 20 May 2008 16:48:24 +0000 (16:48 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 20 May 2008 16:48:24 +0000 (16:48 +0000)
HLT/BASE/AliHLTComponent.cxx

index d675df7..d5c417a 100644 (file)
@@ -1235,8 +1235,9 @@ int AliHLTComponent::ProcessEvent( const AliHLTComponentEventData& evtData,
   } // end of the scope of the stopwatch guard
   if (iResult>=0 && !bSkipDataProcessing) {
     if (fOutputBlocks.size()>0) {
-      //HLTDebug("got %d block(s) via high level interface", fOutputBlocks.size());
-      
+      // High Level interface
+
+      //HLTDebug("got %d block(s) via high level interface", fOutputBlocks.size());      
       // sync memory files and descriptors
       AliHLTMemoryFilePList::iterator element=fMemFiles.begin();
       int i=0;
@@ -1261,11 +1262,14 @@ int AliHLTComponent::ProcessEvent( const AliHLTComponentEventData& evtData,
        }
       }
     } else {
+      // Low Level interface
       iResult=MakeOutputDataBlockList(blockData, &outputBlockCnt, &outputBlocks);
     }
     if (iResult<0) {
       HLTFatal("component %s (%p): can not convert output block descriptor list", GetComponentID(), this);
     }
+  } else {
+    size=0;
   }
   if (iResult<0 || bSkipDataProcessing) {
     outputBlockCnt=0;