Repair embedded dependency build and test setup
Isolate vendored test registration, namespace project error codes, and update dependency revisions. Fix mutable sprite path handling, out-of-tree fixtures, and charviewer initialization while documenting the outstanding character-to-sprite refcount bug. Co-authored-by: Codex (GPT-5) <noreply@openai.com>
This commit is contained in:
15
TODO.md
Normal file
15
TODO.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# TODO
|
||||
|
||||
1. **Make character-to-sprite state bindings release their references symmetrically.**
|
||||
`akgl_character_sprite_add()` increments the sprite refcount for every state-map
|
||||
binding, but no corresponding removal API exists. Replacing a state binding
|
||||
also leaves the previous sprite's refcount incremented. When
|
||||
`akgl_heap_release_character()` drops the character refcount to zero, it clears
|
||||
the character registry entry and zeroes the structure without enumerating
|
||||
`state_sprites`, decrementing the bound sprites, or destroying the SDL property
|
||||
map. Implement binding removal/replacement so each removed binding releases
|
||||
exactly one sprite reference. On final character release, enumerate every
|
||||
remaining binding (the existing `akgl_character_state_sprites_iterate()` release
|
||||
path may be reusable), release each reference, destroy `state_sprites`, and then
|
||||
clear the character. Add tests for removal, replacement, duplicate sprite
|
||||
bindings across multiple states, and final character release.
|
||||
Reference in New Issue
Block a user