Commit Graph

2 Commits (master)

Author SHA1 Message Date
Morgan Pretty d8294aac0d Fixed logging issue and other minor tweaks
• Fixed a bug where the libSession logs wouldn't all come through correctly
• Added logic to handle response headers from libSession
• Minor optimisation to closed groups poller setup
• Minor logging tweaks
7 months ago
Morgan Pretty 1396652698 Refactored the DSL for interacting with C structs
There were a few logs related to bad memory access within libSession and the `toLibSession` convention which we'd originally setup made me nervous as C-friendly objects would be allocated in Swift and then assigned to C struct properties but I'm not sure how the memory would actually behave in this case.

This updated approach unfortunately involves a bunch of duplicate code within 'TypeConversion+Utilities' (and some horrible type aliases for tuples) but as a result we now have compile-time safe 'get' and 'set' functions for any C struct which conforms to `CAccessible` and `CMutable`. The other nice benefit about this change is that the new `set` functions copy memory across into the C structs so we can have more confidence that the memory ownership has shifted to the libSession side of things.
7 months ago