sdl: Fix plugin build and remove broken damage tracking - #23
Merged
Merged
Conversation
ufont_manager_register() takes an owned buffer since 6c0e995, so the plugin did not compile. The font was also parsed from the message binary, which is freed once the call is answered. Signed-off-by: Davide Bettio <davide@uninstall.it>
The driver read element 2 of the arity-2 {subscribe_input, Sources}
tuple, one past its end.
Signed-off-by: Davide Bettio <davide@uninstall.it>
The comparison between the previous and the new display list had several bugs, and a workaround forced a full redraw anyway. Its only effect left was to skip an update whose list looked unchanged, which the bugs made unreliable. Remove it and always redraw; a damage tracking module shared by all drivers follows in a separate series. See also: atomvm#20 Signed-off-by: Davide Bettio <davide@uninstall.it>
This was referenced Oct 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The SDL display plugin no longer compiled on main and carried a display
list comparison whose result was discarded. This series makes it build
again and removes that code:
unloading change, so register_font did not compile. The font was also
parsed straight from the message binary, which is destroyed once the
call is answered. Copy the binary and hand it over, as the ESP32
display task does.
several bugs: an out-of-bounds read when the new list is longer, the
wrong union member compared for scaled images, removed and moved items
never damaged, and a damage rectangle that shrank when merged or
clipped. A workaround forced a full redraw anyway, so its only effect
left was to skip an update whose list looked unchanged, which the bugs
made unreliable. Remove it and always redraw the whole screen.
Partial updates come back with a damage tracking module shared by all
drivers, in a separate series.
See also: #20