ProcessHandle.cpp 534 B

1234567891011121314151617181920212223
  1. /*
  2. * Copyright (c) 2024, Andrew Kaster <akaster@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #include <LibIPC/Decoder.h>
  7. #include <LibIPC/Encoder.h>
  8. #include <LibWebView/ProcessHandle.h>
  9. template<>
  10. ErrorOr<void> IPC::encode(IPC::Encoder& encoder, WebView::ProcessHandle const& handle)
  11. {
  12. TRY(encoder.encode(handle.pid));
  13. return {};
  14. }
  15. template<>
  16. ErrorOr<WebView::ProcessHandle> IPC::decode(IPC::Decoder& decoder)
  17. {
  18. auto pid = TRY(decoder.decode<pid_t>());
  19. return WebView::ProcessHandle { pid };
  20. }