Bug 2400511

Summary: glycin reports SVG dimensions differently than librsvg2
Product: [Fedora] Fedora Reporter: Yaakov Selkowitz <yselkowi>
Component: glycinAssignee: Fabio Valentini <decathorpe>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: 43CC: bgilbert, decathorpe, gnome-sig, kparal, mclasen, multimedia-sig, rust-sig, sebastian-keller
Target Milestone: ---Keywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard: AcceptedFreezeException
Fixed In Version: glycin-2.0.3-1.fc43 Doc Type: ---
Doc Text:
Story Points: ---
Clone Of:
: 2403389 (view as bug list) Environment:
Last Closed: 2025-10-14 22:22:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2324226, 2403389    

Description Yaakov Selkowitz 2025-09-30 19:07:00 UTC
`flatpak build-export` in F43 rejects an SVG icon which was accepted in F42 and hasn't changed in a long time.  Presumably this is a bug in glycin compared to librsvg2:

DEBUG util.py:461:  error: /chroot_tmpdir/work/build/export/share/icons/hicolor/symbolic/apps/org.gnome.Maps-symbolic.svg is not a valid icon: Expected a square icon but got: 17x16

https://koji.fedoraproject.org/koji/taskinfo?taskID=137650026

https://gitlab.gnome.org/GNOME/gnome-maps/-/blob/main/data/icons/public/hicolor/symbolic/apps/org.gnome.Maps-symbolic.svg?ref_type=heads&plain=1

Reproducible: Always

Comment 1 Yaakov Selkowitz 2025-09-30 19:17:12 UTC
Another apparent difference with glycin vs librsvg2/rsvg-pixbuf-loader is that .svgz icons are now raising an error in F43 where they did not in F42:

DEBUG util.py:461:  error: /chroot_tmpdir/work/build/export/share/icons/hicolor/scalable/apps/org.kde.kmahjongg.svgz is not a valid icon: Format not recognized

https://koji.fedoraproject.org/koji/taskinfo?taskID=137648168

Comment 3 Fabio Valentini 2025-09-30 20:07:07 UTC
> Presumably this is a bug in glycin compared to librsvg2:

glycin uses librsvg2 to load SVG files, so that shouldn't be it.

What component is giving you this error message? Is that from "flatpak build-export --disable-sandbox" output?

I assume this is using gdk-pixbuf2 then, not glycin directly?

Then the only difference I could think of is that the indirection gdk-pixbuf2 -> glycin -> librsvg2 adds some inconsistency that wasn't there with only gdk-pixbuf2 -> librsvg2.

Comment 4 Sebastian Keller 2025-10-02 18:22:40 UTC
The size of the symbolic Maps icon is 16.041512 x 16. The difference in pixbuf sizes comes from the librsvg pixbuf loader using "round()" in "get_dimensions_sub()" in "librsvg-c/src/handle.rs" while glycin uses "ceil()" in "svg_dimensions()" in "glycin-loaders/glycin-svg/src/bin/glycin-svg.rs".

The reason for the rsvg pixbuf loader using "round()" was https://bugzilla.gnome.org/show_bug.cgi?id=340664 which was fixed via https://gitlab.gnome.org/GNOME/librsvg/-/commit/412fa5d11d5e2cae5e17ec8e6bdf4ac3abc10663. Prior to that it was always rounding down. glycin has been using "ceil()" from the beginning.

Comment 5 Sebastian Keller 2025-10-06 15:17:01 UTC
This has been fixed upstream in glycin via https://gitlab.gnome.org/GNOME/glycin/-/commit/935f65aca7c70b0948a04459c62a518cdad0c14a.

Comment 6 Fabio Valentini 2025-10-10 22:11:16 UTC
Yeah, this was a glycin bug after all. I'll reassign the issue and associate it with the update that I just filed for glycin 2.0.3.

Comment 7 Fedora Update System 2025-10-10 22:11:39 UTC
FEDORA-2025-2518073aca (glycin-2.0.3-1.fc43, rust-glycin-3.0.3-1.fc43, and 2 more) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-2518073aca

Comment 8 Fedora Blocker Bugs Application 2025-10-10 22:13:12 UTC
Proposed as a Freeze Exception for 43-final by Fedora user decathorpe using the blocker tracking app because:

 Using RHBZ#2400511 as a representative of multiple issues that should be fixed by the update to glycin 2.0.3, including 1) wrong reported dimensions for SVG images, and 2) various crashes on wakeup-from-suspend due to seccomp filter issues.

Comment 9 Fedora Update System 2025-10-11 01:23:43 UTC
FEDORA-2025-2518073aca has been pushed to the Fedora 43 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-2518073aca`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-2518073aca

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Kamil Páral 2025-10-13 15:29:14 UTC
Accepted as a freeze exception in https://pagure.io/fedora-qa/blocker-review/issue/1976

Comment 11 Fedora Update System 2025-10-14 22:22:09 UTC
FEDORA-2025-2518073aca (glycin-2.0.3-1.fc43, rust-glycin-3.0.3-1.fc43, and 2 more) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.