On Wed, 30 Jun 2021 04:51:04 GMT, Sergey Bylokhov <s...@openjdk.org> wrote:
>>> * but what happens if the file cannot be read? We will call the "sf = >>> ShellFolder.getShellFolder" and then we call "sf.getIcon()" and it returns >>> what? As far as I understand it always return MultiResolutionIconImage, no? >>> * >> >> No, the native code will fail to load the icon but since file does exist and >> we only return null for nonexistent file we will fall back to >> UIManager.getIcon which returns icon from the installed LAF resource bundle. >> This is correct behavior since otherwise we might end in file manager with >> file that has no icon at all. Right now that will be a single resolution >> icon for all the LAFs. Again, in the future that can be changed but right >> now it is a single resolution icon. > >> No, the native code will fail to load the icon > So what call will fail? Is the "sf.getIcon()" return null? in what line of > code? Yes, from my remote debugging it happens in sf.getIcon() but the circumstances are quite rare - file has to be inaccessible and the user's GUI session should not be initialized - that's why this failure only happens on headless testing. Another solution would be to mark this test as headful - that would solve issue as well. ------------- PR: https://git.openjdk.java.net/jdk17/pull/178