Skip to content

feat(libSceWebBrowserDialog): implement sceWebBrowserDialogSetCookie - #1002

Closed
Saalik wants to merge 1 commit into
boykopovar:mainfrom
Saalik:feat/webbrowserdialog-set-cookie
Closed

Saalik wants to merge 1 commit into
boykopovar:mainfrom
Saalik:feat/webbrowserdialog-set-cookie

Conversation

@Saalik

@Saalik Saalik commented Oct 6, 2026

Copy link
Copy Markdown

What

Implements sceWebBrowserDialogSetCookie, the last unimplemented export of libSceWebBrowserDialog, replacing the NID-only stub:

  • the signature changes from no arguments to one pointer param, from SharpProspero's sceWebBrowserDialogSetCookie(WebBrowserDialogSetCookieParam*) binding in WebBrowserDialog.cs
  • guards follow the rest of the library: COMMON_DIALOG_ERROR_NOT_INITIALIZED before sceWebBrowserDialogInitialize, COMMON_DIALOG_ERROR_ARG_NULL for a null param
  • the param is accepted and discarded, as no browser session exists to store the cookie — the same silent-stub shape as the other dialogs, now listed in TechnicalDebt.md
  • TechnicalDebt.md also drops WebBrowserDialog from the unknown-signature entry, since the signature is now sourced

Tested

  • extended guest_web_browser_dialog: SetCookie before Initialize returns NOT_INITIALIZED; a null param after Initialize returns ARG_NULL; a param is accepted after Initialize and after Open (any initialized state); builds and passes on Linux
  • Not tested on a title

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed in TechnicalDebt
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source
  • Generic behaviour, not specific to one title
  • Depends on: none
  • AI-assisted: yes

Written with AI assistance (Cline). The SharpProspero layout was fetched and verified against the linked source; the semantics follow the other silent dialogs and the disclosure lives in TechnicalDebt.md.

@github-actions github-actions Bot added the needs rebase Conflicts with main, rebase needed label Oct 6, 2026
Replace the NID-only stub with the real one-pointer signature and the common-dialog guards: NOT_INITIALIZED before sceWebBrowserDialogInitialize, ARG_NULL for a null param, success otherwise. The param is accepted and discarded, as no browser session exists to store the cookie; the 280-byte WebBrowserDialogSetCookieParam layout (size, url, cookie, 256 reserved bytes) is taken from SharpProspero and disclosed in TechnicalDebt.md, which also drops WebBrowserDialog from the unknown-signature list.
@Saalik
Saalik force-pushed the feat/webbrowserdialog-set-cookie branch from 66be739 to fa3bbf8 Compare October 6, 2026 23:16
@Saalik Saalik closed this Oct 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs rebase Conflicts with main, rebase needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant