mirror of
https://github.com/swaywm/sway.git
synced 2026-04-26 06:46:26 -04:00
sway commands are implemented using functions that return an error code and (if the function was not successful) an error string. The two are bundled together by the type `struct cmd_results`. This patch alters the command handler prototype so that the cmd_results objects are returned by value (on the stack), instead of by a pointer to a heap allocated instance of a cmd_results. The latter method had the flaw that, if the heap allocation of the cmd_results object failed, the exact return code would be lost. Furthermore, for some command handlers (such as those in sway/commands/output), returning NULL signified success, so an allocation failure could lead to an ignored error. This change prevents both classes of errors. |
||
|---|---|---|
| .. | ||
| commands | ||
| config | ||
| desktop | ||
| input | ||
| tree | ||
| commands.c | ||
| config.c | ||
| criteria.c | ||
| decoration.c | ||
| ipc-json.c | ||
| ipc-server.c | ||
| main.c | ||
| meson.build | ||
| security.c | ||
| server.c | ||
| sway-bar.5.scd | ||
| sway-input.5.scd | ||
| sway-ipc.7.scd | ||
| sway-output.5.scd | ||
| sway.1.scd | ||
| sway.5.scd | ||
| swaynag.c | ||
| xdg_decoration.c | ||