if (pData->bDisplaying)
READ_CHUNK (read_expi){#ifdef MNG_SUPPORT_TRACE  MNG_TRACE (pData, MNG_FN_READ_EXPI, MNG_LC_START)#endif  if (!pData->bHasMHDR)                /* sequence checks */    MNG_ERROR (pData, MNG_SEQUENCEERROR)#ifdef MNG_INCLUDE_JNG  if ((pData->bHasIHDR) || (pData->bHasBASI) || (pData->bHasDHDR) || (pData->bHasJHDR))#else  if ((pData->bHasIHDR) || (pData->bHasBASI) || (pData->bHasDHDR))#endif    MNG_ERROR (pData, MNG_SEQUENCEERROR)  if (iRawlen < 3)                     /* check the length */    MNG_ERROR (pData, MNG_INVALIDLENGTH)#ifdef MNG_SUPPORT_DISPLAY  if (pData->bDisplaying)  {    /* TODO: something !!! */  }#endif /* MNG_SUPPORT_DISPLAY */#ifdef MNG_STORE_CHUNKS  if (pData->bStorechunks)  {                                    /* initialize storage */    mng_retcode iRetcode = ((mng_chunk_headerp)pHeader)->fCreate (pData, pHeader, ppChunk);    if (iRetcode)                      /* on error bail out */      return iRetcode;                                       /* store the fields */    ((mng_expip)*ppChunk)->iSnapshotid = mng_get_uint16 (pRawdata);    ((mng_expip)*ppChunk)->iNamesize   = iRawlen - 2;    if (((mng_expip)*ppChunk)->iNamesize)    {      MNG_ALLOC (pData, ((mng_expip)*ppChunk)->zName,                        ((mng_expip)*ppChunk)->iNamesize + 1)      MNG_COPY (((mng_expip)*ppChunk)->zName, pRawdata+2,                ((mng_expip)*ppChunk)->iNamesize)    }  }#endif /* MNG_STORE_CHUNKS */#ifdef MNG_SUPPORT_TRACE  MNG_TRACE (pData, MNG_FN_READ_EXPI, MNG_LC_END)#endif  return MNG_NOERROR;                  /* done */}