OpenMAX PortEnable conflicting conditions with AllocateBuffe

In Fig 3-16, the IL client enables port in step 1.15 and calls AllocateBuffer in 1.16 with the component in the OMX_StateExecuting state.

However, in pg. 73, 3.2.2.6 OMX_CommandPortEnable, it says “The port must immediately set bEnabled in its port definition structure when the port receives OMX_CommandPortEnable.” while in pg. 82, 3.2.2.15 OMX_AllocateBuffer, it says that the call should be performed under 3 conditions, with the 3rd condition (3rd bullet point) “On a disabled port when the component is the OMX_StateExecuting, the OMX_StatePause or the OMX_StateIdle states.”

So in Fig.3-16, step 1.16 will fail to allocate any buffers, since the port is now enabled, and the 3rd condition for AllocateBuffer will be false.

Can anybody clarify this?

Thanks!
Lim