Skip to content
  • David Edmundson's avatar
    [libtaskmanager] Increase buffer for pipewire format negotiation · 926f8647
    David Edmundson authored and Nate Graham's avatar Nate Graham committed
    Libtaskmanager's buffer for spa_builder  is too small on certain
    configurations. Because podBuilder->state.offset is never reset, the
    buffer space can run out when EGL returns a long list of dma_buf
    modifiers, causing PipeWire negotiation to fail.
    
    An example is when EGL returns 20 modifiers. There are 6 formats defined
    in pipewiresourcestream.cpp, for each format it will construct 2 frames,
    one with 21*8=168 bytes long of modifiers. The modifier lists for all
    frames will be 6*168=1008 bytes (only 16 bytes left of 1024 bytes), let
    alone other frames.
    
    BUG: 446061
    926f8647