Opened 12 months ago

Closed 12 months ago

Last modified 4 months ago

#15313 closed bug (fixed)

Icons - running apps showing "broken computer" icon

Reported by: vidrep Owned by: pulkomandy
Priority: normal Milestone: R1/beta2
Component: User Interface Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

hrev53416 x86_64

When viewing running apps in either Process Controller or Slayer, the icons displayed are those of a "broken computer". See attached screenshots to illustrate.

Attachments (3)

ProcessController.png (87.6 KB ) - added by vidrep 12 months ago.
Slayer.png (96.5 KB ) - added by vidrep 12 months ago.
SoftwareUpdater.png (10.3 KB ) - added by vidrep 12 months ago.

Download all attachments as: .zip

Change History (10)

by vidrep, 12 months ago

Attachment: ProcessController.png added

by vidrep, 12 months ago

Attachment: Slayer.png added

by vidrep, 12 months ago

Attachment: SoftwareUpdater.png added

comment:1 by diver, 12 months ago

I also see it. Could be related to hrev53399.

comment:2 by waddlesplash, 12 months ago

Owner: changed from stippi to pulkomandy
Status: newassigned

Indeed.

comment:3 by pulkomandy, 12 months ago

Makes sense, as the app argv[0] is now pointing to the symlink, so code using that should resolve the symlink if neded, I guess? Or use get_image_info instead?

comment:4 by waddlesplash, 12 months ago

There is already a function "get_app_ref" which has a "bool traverse" parameter. Should we always set it here? If we did, this would remove the capability (which I think PulkoMandy was trying to add) to set icons in symlinks.

comment:5 by pulkomandy, 12 months ago

My work (for this change) was not to allow setting icons on symlinks, but allowing the app itself to know that it was launched from a symlink, getting the correct argv[0] so it can use the filename (busybox uses this when run from Terminal to behave as different apps), or in the case of the app I'm working on, use informations stored in the symlink attributes to behave differently.

Setting the icon on symlinks is in fact somewhat easier: Tracker is explicitly traversing the symlink to get the icon already, at least in the InfoWindow case, and will show the correct icon for broken symlinks, if you set one. So we would just need to reverse the order in which we check things here (check if the symlink has an icon first, and if it doesn't, check the pointed file/dir).

I'm now testing changing BRoster to dereference the entry_ref it gets, so that GetTrackerIcon will behave correctly for getting an icon from a running application (through its app_info).

comment:6 by waddlesplash, 12 months ago

Resolution: fixed
Status: assignedclosed

Fix merged in hrev53430.

comment:7 by nielx, 4 months ago

Milestone: UnscheduledR1/beta2

Assign tickets with status=closed and resolution=fixed within the R1/beta2 development window to the R1/beta2 Milestone

Note: See TracTickets for help on using tickets.