Commit graph

39 commits

Author SHA1 Message Date
bd7b1f808e client: destroy proxy when no dtor is available 2024-07-01 14:32:46 +02:00
55c78a56c0 client: do not define destroy listener in client mode
fixes #9
2024-06-27 00:24:36 +02:00
Tom Englund
c1e34fb2b7
core: avoid undefined behaviour in C macro (#8)
to safely use wl_container_of with a class the class has to be no
virtual functions, no inheritance, and uniform access control (e.g all
public)

work around this by putting this into a destroywrapper struct.
2024-06-26 20:35:08 +02:00
914f083741 client: properly release objects on destroy 2024-06-22 16:50:53 +02:00
1413398dca client: use CC for client classes 2024-06-20 18:20:55 +02:00
Vaxry
38140181fe
core: Add client code generation (#6)
Adds a `--client` flag for client code
2024-06-20 00:17:58 +02:00
46faf3edc2 source: ignore send... requests when resource is null 2024-06-07 14:35:18 +02:00
f84ca21ed8 core: set resource to nullptr in onDestroyCalled
if the consumer does not free this resource within onDestroy, we'd be doing a UAF later in the ~dtor
2024-06-07 11:04:54 +02:00
89b337424b source: set user data after checks 2024-05-31 18:32:08 +02:00
6fdc0ceac9 core: fix external type usage 2024-05-29 22:31:08 +02:00
24cf55c957 core: forward declare all used ifaces 2024-05-29 22:25:22 +02:00
3afed43647 core: avoid uaf in resource_set_user_data 2024-05-18 19:52:55 +01:00
e1e94b12d5 core: support null strings 2024-05-12 16:37:43 +01:00
1281c1ed53 core: avoid calling inert parents 2024-05-11 16:56:52 +01:00
9ca975c910 core: add --wayland-enums and raw events 2024-05-10 17:52:18 +01:00
232fa45d54 core: fix usage of reserved C++ types 2024-05-09 21:16:32 +01:00
6119dc2a96 core: fix protocol types in events sometimes unrecognized 2024-05-07 14:26:05 +01:00
3940d97f16 core: fix interfaces with since= attributes 2024-05-03 17:37:58 +01:00
c8c2151c60 header: use formatting for ::error() 2024-05-01 19:55:49 +01:00
f1050d83a2 core: fix misused boolean 2024-05-01 19:15:35 +01:00
c14dd732ff header: include <string> 2024-05-01 19:13:45 +01:00
9ab8ea2d62 core: don't overwrite files if they are the same 2024-05-01 19:12:10 +01:00
43d27dae69 headers: add misc useful functions 2024-05-01 19:12:10 +01:00
4eb457b3f7 core: add support for nullable objects 2024-04-26 23:45:55 +01:00
e60b1bb9a1 source: fix including ->pResource under non-new_id resources 2024-04-24 21:08:28 +01:00
066c24549f core: fix new_id types in events 2024-04-24 15:46:14 +01:00
7c9c8adfe7 core: fix missing interfaces 2024-04-21 21:13:44 +01:00
6c4c47329f headers: make enum names more verbose to avoid conflicts 2024-04-21 20:39:44 +01:00
9e13e09152 core: remove destroy listener after fired 2024-04-20 14:26:26 +01:00
80c764615c handlers: avoid sending useless props 2024-04-20 03:47:26 +01:00
d89eea7cd8 enum: use iface name as well if available 2024-04-20 03:32:32 +01:00
871bc88284 scanner: add support for enums 2024-04-20 03:13:12 +01:00
138764555c headers: declare extern interfaces 2024-04-20 02:49:56 +01:00
5f40a4fd2f core: fix non-empty args in send* fns 2024-04-20 02:28:03 +01:00
e50948947a core: add version 2024-04-20 01:49:45 +01:00
f2e8642342 source: fix missed defines 2024-04-20 01:37:39 +01:00
4dc342bc1d vtable: avoid requiring fpermissive 2024-04-20 01:29:26 +01:00
18e561ff2c core: use original name for files 2024-04-20 01:19:53 +01:00
5dc55d5230 Initial commit 2024-04-20 01:06:51 +01:00