mirror of
https://github.com/labwc/labwc.git
synced 2026-05-09 12:06:34 -04:00
Before this commit, there was a use-after-free bug on Reconfigure: - theme_finish() destroys lab_imgs for titlebar icons - For some reason, undecorate() calls _create_buffer() in scaled-img-buffer.c, which calls img_render() on a destroyed lab_img. So in this commit, the lifetime of lab_img is expanded to when the scaled_img_buffers referencing it are all destroyed. This is achieved by calling lab_img_copy() when setting a lab_img to scaled_img_buffer and calling lab_img_destroy() when clearing a lab_img. Now that scaled_img_buffer.img are always different, lab_img_equal() is added to compare the content of scaled_img_buffer.img. |
||
|---|---|---|
| .. | ||
| array.h | ||
| border.h | ||
| box.h | ||
| buf.h | ||
| dir.h | ||
| direction.h | ||
| fd-util.h | ||
| file-helpers.h | ||
| font.h | ||
| grab-file.h | ||
| graphic-helpers.h | ||
| list.h | ||
| macros.h | ||
| match.h | ||
| mem.h | ||
| nodename.h | ||
| parse-bool.h | ||
| parse-double.h | ||
| scaled-font-buffer.h | ||
| scaled-img-buffer.h | ||
| scaled-rect-buffer.h | ||
| scaled-scene-buffer.h | ||
| scene-helpers.h | ||
| set.h | ||
| spawn.h | ||
| string-helpers.h | ||
| surface-helpers.h | ||
| three-state.h | ||