Skip to content

Add ctx/uctx 2D vector graphics library

Phileas requested to merge uctx into main

Quoting myself from matrix:

uctx branch status: the allocator usage seems sane, but there's a memory leak every time hardware.reset_ctx() is called - the python object is handled by gc but the C object isn't. sadly, fixing that by destroying the old ctx would result in use after free.

proper fix would look like what rahix proposed - smaller ctx objects that delegate to the fullscreen one, and each python ctx object has a corresponding C ctx object that can be safely destroyed when it gets gc'd.

i would propose merging this branch as it is to unblock people interested in ctx, accept the memory leak for now, and work on fixing the issue after it is merged

Merge request reports