gtk4paintablesink: causes entire memory to fill up when use-scaling-filter=true and on 2x desktop scaling
Describe your issue
Running the example in the tree with gtk_v4_14
feature enabled, use-scaling-filter=true
on the paintable, and using 2x desktop scaling cause system memory to fill up and eventually freeze the system and trigger systemd-oomd
.
I btw didn't test this in fractional scaling, but works just fine with default 1x scaling.
Expected Behavior
It should work just fine with as-usual KB/MB usage of memory.
Observed Behavior
16GB of memory gets filled up.
Setup
- Operating System: Fedora Linux 39.20240228.0 (Silverblue) (Linux 6.7.6-200.fc39.x86_64)
- Device: Computer (AMD Ryzen 5 5600G)
- gst-plugins-rs Version: 0.12 (also reproducible in main branch)
- GTK version: 4.13.9-74860f7
- GStreamer Version: 1.22.8
- Command line: bash
This is also reproducible on an Intel Laptop.
Steps to reproduce the bug
- Clone repository
- Modify
gst-plugins-rs/video/gtk4/examples/gtksink.rs
by setting paintableuse-scaling-filter=true
:
paintable.set_property("use-scaling-filter", true);
- Run
cd gst-plugins-rs/video/gtk4
- Set device scaling to 2x (This is on
Displays > Scale > 200%
in GNOME Control Center) - Run
cargo run --example gtksink --features gtk_v4_14
- Wait memory to fill up and freeze system (this happens within the first 3 seconds after running the command)
How reproducible is the bug?
Always
Solutions you have tried
- Leaving
use-scaling-filter
to default - Using default 100% scaling