1
0
mirror of https://github.com/emilk/egui.git synced 2026-08-29 04:40:03 -04:00

Match image file extensions case-insensitively (#8430)

`image.PNG` and `cat.SVG` were not recognized as images.

Adds `egui::load::has_extension(uri, extension)`, which ignores ASCII
case and any `#fragment`, and uses it for the `.svg`, `.gif`, `.webp`
and `.png` checks.

Note: gif/webp URIs like `a#b.gif` no longer match, since the fragment
is now excluded.

* [x] I have followed the instructions in the PR template

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Emil Ernerfeldt
2026-08-17 21:41:09 -07:00
committed by GitHub
parent 5579f831c2
commit 9bb36b0ac2
5 changed files with 29 additions and 5 deletions

View File

@@ -1720,7 +1720,7 @@ fn save_screenshot_and_exit(
screen_size_in_pixels: [u32; 2],
) {
assert!(
path.ends_with(".png"),
egui::load::has_extension(path, "png"),
"Expected EFRAME_SCREENSHOT_TO to end with '.png', got {path:?}"
);
let screenshot = painter.read_screen_rgba(screen_size_in_pixels);