I am not respinning again. The backout is all I am willing to take for
this PIT.
It is the lowest risk option and SQE already says it fixes the problem.
If someone wants to file yet-another-bug for this updated version
and take on the task of running all related regression tests it can be done
in the regular repository after PIT is complete.
-phil
On 10/25/16, 3:10 AM, Semyon Sadetsky wrote:
Looks good.
--Semyon
On 10/25/2016 12:21 PM, Alexandr Scherbatiy wrote:
Could you review the updated fix:
http://cr.openjdk.java.net/~alexsch/8167988/webrev.00
- Path creation is moved under instanceof ShellFolder check
- Paths.get(file.getPath()) is changed to file.toPath()
Thanks,
Alexandr.
On 10/25/2016 9:36 AM, Semyon Sadetsky wrote:
It seems the fix should be:
===================================================================
--- src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
+++ src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
@@ -244,10 +244,10 @@
* @exception FileNotFoundException if file does not exist
*/
public static ShellFolder getShellFolder(File file) throws
FileNotFoundException {
- Path path = Paths.get(file.getPath());
if (file instanceof ShellFolder) {
return (ShellFolder)file;
}
+ Path path = Paths.get(file.getPath());
if (!Files.exists(path, LinkOption.NOFOLLOW_LINKS)) {
throw new FileNotFoundException();
}
===================================================================
--Semyon
On 10/25/2016 1:26 AM, Phil Race wrote:
SQE reports some 35 tests fail as a result of this bug.
I am backing out the change that caused it from our PIT and need a
reviewer.
SQE will verify this before I push.
Bug: https://bugs.openjdk.java.net/browse/JDK-8167988
Fix :
hg diff src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
diff --git
a/src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
b/src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
--- a/src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
+++ b/src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java
@@ -30,10 +30,6 @@
import java.awt.Toolkit;
import java.io.*;
import java.io.FileNotFoundException;
-import java.nio.file.Files;
-import java.nio.file.LinkOption;
-import java.nio.file.Path;
-import java.nio.file.Paths;
import java.util.*;
import java.util.concurrent.Callable;
@@ -244,11 +240,10 @@
* @exception FileNotFoundException if file does not exist
*/
public static ShellFolder getShellFolder(File file) throws
FileNotFoundException {
- Path path = Paths.get(file.getPath());
if (file instanceof ShellFolder) {
return (ShellFolder)file;
}
- if (!Files.exists(path, LinkOption.NOFOLLOW_LINKS)) {
+ if (!file.exists()) {
throw new FileNotFoundException();
}
return shellFolderManager.createShellFolder(file);