Skip to content

SGDBoop Not Applying Icons #142

Closed
Closed

Description

@lonykaras4-dev

SGDBoop doesn't apply icons. I've tried everything: rebooting, reinstalling SGDBoop, installing it from different sources (AUR, Flatpak) nothing helps.

Activity

  1. lonykaras4-dev commented on Sep 8, 2026

    @lonykaras4-dev
    Author

    Found a fix: renaming icons from JPG to PNG and manually picking them.

  2. Speedy2662 commented on Sep 30, 2026

    @Speedy2662

    Had the same problem and dug into it a bit. I think I found the cause.

    In downloadAssetFile() in sgdboop.c, the success path frees outfilename and then returns it:

    if (!rename(outfilename_temp, outfilename)) {
        free(outfilename);
        free(outfilename_temp);
        return outfilename;
    }
    

    For non-Steam icons that freed pointer goes straight into updateVdf(), so the icon field in shortcuts.vdf ends up full of garbage. Mine had 6 random bytes in there instead of a path. The icon file itself downloads fine into the grid folder, so it's only the vdf entry that's broken.

    Looks like it came in with cd0c569 (the hotloading change), so every release since 1.4.0 has it. Just removing the free(outfilename); line there should fix it; the caller can free it afterwards.

    Workaround for now: set the icon manually in the shortcut's properties in Steam and point it at grid/_icon.png, then restart Steam.

    (Flatpak 1.4.3, CachyOS)

  3. mpaterakis commented on Sep 30, 2026

    @mpaterakis
    Collaborator

    Good catch speedy, fixed in 46b31d2.
    That free had no business being there, my bad.

  4. Arcitec commented on Oct 2, 2026

    @Arcitec
    Contributor

    @mpaterakis I did the same research independently and reached the same conclusion:

    #92 (comment)

    SGDBoop was writing nonsense instead of a string. Thanks for the fix @Speedy2662. It's working now.

    I also noticed two memory leaks, fixed in #144.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions