Skip to content

sco_ui_surfaces_v1.last_error

The message of this plugin’s last refused call (“” if none), NUL-terminated, with the raw-handler size handshake (*inout_size: capacity in; bytes written, or needed with TOO_MANY, out).

sco_result (*)(sco_plugin *, char *, uint32_t *)

Service index

Property Value
Symbol sco_ui_surfaces_v1.last_error
Record ID sco-ui-surfaces-v1-last-error
Service sco.ui.surfaces
Table sco_ui_surfaces_v1
Version macro SCO_UI_SURFACES_VERSION_1_0
Packed table version 65536
Since / availability size >= 40; 1.0
Complete member extent (x64 bytes) 40
Table size (x64 bytes) 40

Header source

sco_result (*last_error)(sco_plugin* self, char* out, uint32_t* inout_size);
The message of this plugin’s last refused call (“” if none), NUL-terminated, with the raw-handler size handshake (*inout_size: capacity in; bytes written, or needed with TOO_MANY, out).

OK; TOO_MANY buffer too small (*inout_size = bytes needed); BAD_ARG invalid/released self, NULL inout_size or NULL out with nonzero capacity; UNAVAILABLE stopped service. Diagnostic completeness unspecified.

query_service NOT_FOUND when the host does not publish sco.ui.surfaces (it needs sco.ui started); UNAVAILABLE for an incompatible version. No game capability or renderer requirement.

Caller-owned buffer written in place. No allocation transfer.

Any thread; registry lock held only for the copy. No callbacks.

No callbacks; desc, pose and panel_id are read during the call only.

No plugin code runs inside the service; calls from several threads are serialized by the registry lock.

No cancellation entrypoint; synchronous read. Unload and Stop clear the message.

Status labels are copied verbatim from the catalogue: direct is native access; typed-wrapper is wrapper-backed; restricted is a subset/adaptation; unsupported means no supported route is established. No status implies universal safety.

Language Catalogue status Source evidence / wrapper tokens
c direct include/sco_ui_surfaces.h
(*last_error)
cpp typed-wrapper include/scosdk/ui_surfaces.hpp
sco_result r = table_->last_error(self_, out.data(), &size);
csharp unsupported docs/contracts.md
C# and Lua sco.ui.surfaces routes are unsupported.
lua unsupported docs/contracts.md
C# and Lua sco.ui.surfaces routes are unsupported.

None identified in the catalogue; this is not proof none can exist.

ABI pins prove layout, not semantic behavior or a live game session.