"One or more resources (such as icon or backgroundImage) specified in your settings could not be found." error with valid icon URL #24025

Closed
opened 2026-01-31 08:59:18 +00:00 by claunia · 3 comments
Owner

Originally created by @sba923 on GitHub (Jan 29, 2026).

Windows Terminal version

1.24.10212.0

Windows build number

10.0.19045.6809.amd64fre.vb_release.191206-1406

Other Software

No response

Steps to reproduce

Use the following icon URL in a profile:

            {
                "guid": "{51855cb2-8cce-5362-8f54-464b92b32386}",
                "hidden": false,
                "icon": "https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png",
                "name": "Ubuntu",
                "source": "CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc"
            }

The https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png is valid, but this generates an error:

Image

Removing the "icon": "https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png", line makes the error disappear.

Expected Behavior

The profile should use the icon at https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png

Image

Actual Behavior

Windows Terminal emits the following error:

Image
Originally created by @sba923 on GitHub (Jan 29, 2026). ### Windows Terminal version 1.24.10212.0 ### Windows build number 10.0.19045.6809.amd64fre.vb_release.191206-1406 ### Other Software _No response_ ### Steps to reproduce Use the following icon URL in a profile: ``` { "guid": "{51855cb2-8cce-5362-8f54-464b92b32386}", "hidden": false, "icon": "https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png", "name": "Ubuntu", "source": "CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc" } ``` The `https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png` is valid, but this generates an error: <img width="1244" height="642" alt="Image" src="https://github.com/user-attachments/assets/09ea0403-51d5-4aab-ad8f-dfb4c49dce8c" /> Removing the `"icon": "https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png",` line makes the error disappear. ### Expected Behavior The profile should use the icon at `https://assets.ubuntu.com/v1/49a1a858-favicon-32x32.png` <img width="64" height="64" alt="Image" src="https://github.com/user-attachments/assets/5f8f57c0-c4df-44c6-a048-0cb6695b1b1c" /> ### Actual Behavior Windows Terminal emits the following error: <img width="1244" height="642" alt="Image" src="https://github.com/user-attachments/assets/b27264bc-3ad0-4f73-b7e5-b8502b32ea2f" />
claunia added the Resolution-By-DesignNeeds-TriageIssue-Bug labels 2026-01-31 08:59:18 +00:00
Author
Owner

@DHowett commented on GitHub (Jan 29, 2026):

Hey. I know this sucks. For both security and reliability reasons, we had to disable icons (images, shaders, sounds) being downloaded directly from the web.

We got a couple sporadic reports that Terminal would try to make outgoing connections during startup.

It turns out that XAML's Image element automatically downloads web images. We never opted in for this, so it was somewhat of an accidental misfeature.

We realized pretty quickly that these could be used as tracking pixels (sending a ping to a server every time settings reloads, or every time Terminal launches). It also led to delays on launch while XAML ran downloads (mind you, it used the Internet Explorer engine to do so).

We could have added some aggressive caching, but honestly... the juice wasn't worth the squeeze. It would still be a risk and a danger, and it would still mess up our reliability stats.

Not LLM-written, I'm just long-winded.

@DHowett commented on GitHub (Jan 29, 2026): Hey. I know this sucks. For both security and reliability reasons, we had to disable icons (images, shaders, sounds) being downloaded directly from the web. We got a couple sporadic reports that Terminal would try to make outgoing connections during startup. It turns out that _XAML's `Image` element_ automatically downloads web images. We never opted in for this, so it was somewhat of an accidental misfeature. We realized pretty quickly that these could be used as tracking pixels (sending a ping to a server every time settings reloads, or every time Terminal launches). It also led to delays on launch while XAML ran downloads (mind you, it used the Internet Explorer engine to do so). We could have added some aggressive caching, but honestly... the juice wasn't worth the squeeze. It would still be a risk and a danger, and it would still mess up our reliability stats. Not LLM-written, I'm just long-winded.
Author
Owner

@DHowett commented on GitHub (Jan 29, 2026):

(For that profile specifically, you may also be able to inherit the icon field and have it perhaps maybe just work.)

@DHowett commented on GitHub (Jan 29, 2026): (For that profile specifically, you may also be able to `inherit` the icon field and have it perhaps maybe just work.)
Author
Owner

@sba923 commented on GitHub (Jan 30, 2026):

@DHowett I also love to take the long and winding road.

I had intuited that some security-driven blocking had been put in place, your answer has just confirmed that.

But I didn't add that URL to my config file, this was probably inherited from restoring data from an old file that had been auto-populated by an earlier version of Windows Terminal.

Because of that, I would have expected a different behavior.

The new versions that don't support that anymore should emit a clear message along the "this is no longer supported" lines. With a clear reference to the unsupported entry. Stating that the resource cannot be found is... plain wrong if you ask me. Would creating an issue for that make sense?

@sba923 commented on GitHub (Jan 30, 2026): @DHowett I also love to take the long and winding road. I had intuited that some security-driven blocking had been put in place, your answer has just confirmed that. But I didn't add that URL to my config file, this was probably inherited from restoring data from an old file that had been auto-populated by an earlier version of Windows Terminal. Because of that, I would have expected a different behavior. The new versions that don't support that anymore should emit a clear message along the "this is no longer supported" lines. With a clear reference to the unsupported entry. Stating that the resource cannot be found is... plain wrong if you ask me. Would creating an issue for that make sense?
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#24025