Skip to content
Snippets Groups Projects
  • Nika Layzell's avatar
    6c8af6ef
    Bug 1781129 - Part 1: Use BigBuffer for IPCDataTransfer, r=edgar · 6c8af6ef
    Nika Layzell authored
    The IPCDataTransfer type is used to transfer Clipboard/Drag & Drop payloads
    over IPC to allow them to be written to or read from the relevant system
    interfaces. Previously, the system which was used was somewhat complex, and
    tried to use Shmem in some cases to store buffers out of line. Now that
    BigBuffer is available, it can be simplified substantially.
    
    In addition, this change removed the memory buffer overload of GetSurfaceData,
    as the only consumer was using it to immediately send the payload over IPC as a
    nsCString. It was changed to instead use `BigBuffer` as that is more efficient
    in a large buffer situation, and reduces the number of required copies.
    
    Differential Revision: https://phabricator.services.mozilla.com/D151852
    6c8af6ef
    History
    Bug 1781129 - Part 1: Use BigBuffer for IPCDataTransfer, r=edgar
    Nika Layzell authored
    The IPCDataTransfer type is used to transfer Clipboard/Drag & Drop payloads
    over IPC to allow them to be written to or read from the relevant system
    interfaces. Previously, the system which was used was somewhat complex, and
    tried to use Shmem in some cases to store buffers out of line. Now that
    BigBuffer is available, it can be simplified substantially.
    
    In addition, this change removed the memory buffer overload of GetSurfaceData,
    as the only consumer was using it to immediately send the payload over IPC as a
    nsCString. It was changed to instead use `BigBuffer` as that is more efficient
    in a large buffer situation, and reduces the number of required copies.
    
    Differential Revision: https://phabricator.services.mozilla.com/D151852
moz.build 3.17 KiB