Index: Sources/Objects/Assembly/cip_as.c =================================================================== --- Sources/Objects/Assembly/cip_as.c (revision 109039) +++ Sources/Objects/Assembly/cip_as.c (working copy) @@ -1190,8 +1190,11 @@ { CIP_AS_CONNECTION_LIST_T *ptConnectionEntry; - if (CIP_AS_IS_RT_FORMAT_RUNIDLE(ptInstance->usParam)) + if ((CIP_AS_IS_RT_FORMAT_RUNIDLE(ptInstance->usParam)) && (ptInstance->usMaxSize > 0)) { + /* Account additional 4 bytes for the RUN/IDLE header. + Special case: Except for assemblies of size zero (important for ListenOnly/InputOnly producing (heartbeat/dummy) assemblies in the scanner) + */ usAsSize += 4; }