<i18n dev> RFR: 8344061: Remove doPrivileged calls from shared implementation code in the java.desktop module : part 2 [v3]
Alexey Ivanov
aivanov at openjdk.org
Mon Nov 18 18:03:47 UTC 2024
On Sun, 17 Nov 2024 20:59:29 GMT, Phil Race <prr at openjdk.org> wrote:
>> Update 21 desktop module shared implementation files to remove doPrivileged.
>> All the usual tests still pass.
>
> Phil Race has updated the pull request incrementally with one additional commit since the last revision:
>
> 8344061
Changes requested by aivanov (Reviewer).
src/java.desktop/share/classes/sun/awt/AppContext.java line 521:
> 519: // Create a thread that belongs to the thread group associated
> 520: // with the AppContext and invokes EventQueue.postEvent.
> 521: Thread thread = new Thread(r);
Previously, the thread was created in the app context thread group and the properties of the created thread were modified, such as its priority and daemon flag.
https://github.com/openjdk/jdk/blob/d76b5b888e15b507631068f508e261cab75c841e/src/java.desktop/share/classes/sun/awt/AppContext.java#L559-L563
src/java.desktop/share/classes/sun/awt/FontConfiguration.java line 163:
> 161: } catch (Exception e) {
> 162: }
> 163: return exists.booleanValue();
Suggestion:
try {
File f = new File(fileName);
return f.exists();
} catch (Exception e) {
return false;
}
In this case, no variable is need.
If you prefer to have the variable, it can now be of primitive type `boolean`.
Can an exception be thrown at all? Neither `new File` nor `f.exists()` throw a checked exception.
src/java.desktop/share/classes/sun/font/CreatedFontTracker.java line 1:
> 1: /*
The following imports are unused now:
import java.security.AccessController;
import java.security.PrivilegedAction;
src/java.desktop/share/classes/sun/font/FileFont.java line 38:
> 36: import sun.java2d.DisposerRecord;
> 37:
> 38: import java.io.IOException;
`java.io.IOException` is unused now.
src/java.desktop/share/classes/sun/font/SunFontManager.java line 1705:
> 1703: f = new File(pathDirs[p] + File.separator + s);
> 1704: if (f.exists()) {
> 1705: path = f.getAbsolutePath();
This can now be
return f.getAbsolutePath();
Then `path` variable can be removed.
-------------
PR Review: https://git.openjdk.org/jdk/pull/22161#pullrequestreview-2443244947
PR Review Comment: https://git.openjdk.org/jdk/pull/22161#discussion_r1847001461
PR Review Comment: https://git.openjdk.org/jdk/pull/22161#discussion_r1846985440
PR Review Comment: https://git.openjdk.org/jdk/pull/22161#discussion_r1847022204
PR Review Comment: https://git.openjdk.org/jdk/pull/22161#discussion_r1847024301
PR Review Comment: https://git.openjdk.org/jdk/pull/22161#discussion_r1846971254
More information about the i18n-dev
mailing list