RFR : 8207395: jar has issues with UNC-path arguments for the jar -C parameter [windows]
Baesken, Matthias
matthias.baesken at sap.com
Wed Jul 18 14:51:55 UTC 2018
Good point, I think I better keep the "good old" loop .
Second webrev containing the suggestions of Goetz :
http://cr.openjdk.java.net/~mbaesken/webrevs/8207395.1/
Best regards, Matthias
> -----Original Message-----
> From: Scott Palmer [mailto:swpalmer at gmail.com]
> Sent: Mittwoch, 18. Juli 2018 15:05
> To: Baesken, Matthias <matthias.baesken at sap.com>
> Cc: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>; core-libs-
> dev at openjdk.java.net
> Subject: Re: RFR : 8207395: jar has issues with UNC-path arguments for the
> jar -C parameter [windows]
>
> That gives a different result.
>
> Original:
> "///" -> “/"
>
> replaceAll:
> "///" -> “//"
>
>
> > On Jul 18, 2018, at 7:18 AM, Baesken, Matthias
> <matthias.baesken at sap.com> wrote:
> >
> > Hi Götz, thanks for the input !
> > Should we maybe use
> >
> > dir.replaceAll
> >
> > and not the while loop ?
> >
> >> while (dir.indexOf("//") > -1) {
> >> dir = dir.replace("//", "/");
> >> }
> >
> > Best regards, Matthias
> >
> >
> >> -----Original Message-----
> >> From: Lindenmaier, Goetz
> >> Sent: Mittwoch, 18. Juli 2018 11:32
> >> To: Baesken, Matthias <matthias.baesken at sap.com>; core-libs-
> >> dev at openjdk.java.net
> >> Subject: RE: RFR : 8207395: jar has issues with UNC-path arguments for
> the
> >> jar -C parameter [windows]
> >>
> >> Hi Matthias,
> >>
> >> thanks for doing this fix.
> >>
> >> I think this can be noted down a bit better, avoiding duplicating the loop.
> >> Also, please remove the redundant dir.replace(File.separatorChar, '/').
> >>
> >> dir = dir.replace(File.separatorChar, '/');
> >> + String unc = (dir.startsWith("//") && (File.separatorChar ==
> '\\'))
> >> ? "/" : "";
> >> while (dir.indexOf("//") > -1) {
> >> dir = dir.replace("//", "/");
> >> }
> >> - pathsMap.get(version).add(dir.replace(File.separatorChar,
> '/'));
> >> + // Restore the second leading '/' needed for the Windows
> UNC
> >> path.
> >> + dir = unc + dir;
> >> + pathsMap.get(version).add(dir);
> >> nameBuf[k++] = dir + args[++i];
> >>
> >> Best regards,
> >> Goetz.
> >>
> >>> -----Original Message-----
> >>> From: core-libs-dev [mailto:core-libs-dev-bounces at openjdk.java.net]
> On
> >>> Behalf Of Baesken, Matthias
> >>> Sent: Dienstag, 17. Juli 2018 13:15
> >>> To: core-libs-dev at openjdk.java.net
> >>> Subject: [CAUTION] RFR : 8207395: jar has issues with UNC-path
> arguments
> >>> for the jar -C parameter [windows]
> >>>
> >>> Please review this small fix for allowing windows UNC paths in the jar -
> C
> >>> parameter.
> >>> Currently passing a UNC path to a directory with -C <dir> fails :
> >>>
> >>> c:\testdir>c:\tools\jdk10\bin\jar.exe test.jar -C \\MYMACHINE\subdir
> >>> README.txt
> >>> Illegal option: s
> >>> Try `jar --help' for more information.
> >>>
> >>> With the patch it works .
> >>>
> >>> webrev
> >>>
> >>> http://cr.openjdk.java.net/~mbaesken/webrevs/8207395/
> >>>
> >>> bug
> >>>
> >>> https://bugs.openjdk.java.net/browse/JDK-8207395
> >>>
> >>>
> >>>
> >>>
> >>> Thanks, Matthias
> >
More information about the core-libs-dev
mailing list