Home My Page Projects Code Snippets Project Openings SML/NJ Bugs
Summary Activity Tracker Lists

[#218] OS.Path.toString raise invalidArc if arcs have ShiftJIS code

Date:
2019-01-08 08:00
Priority:
3
State:
Open
Submitted by:
Bug Submitter (webuser)
Assigned to:
Nobody (None)
Machine Architecture:
x86
Operating System:
Other
Component:
Basis Library
Resolution:
None
Severity:
Minor
OS Version:
Windows 10
SML/NJ Version:
110.85
Keywords:
OS.Path, Windows
URL:
Transcript (of reproduction):
- OS.Path.toString {arcs = ["\129|"], isAbs = false, vol = ""}; [autoloading] [library $SMLNJ-BASIS/basis.cm is stable] [library $SMLNJ-BASIS/(basis.cm):basis-common.cm is stable] [autoloading done] uncaught exception InvalidArc raised at: Basis/Implementation/OS/os-path-fn.sml:47.62-47.72 -
Source (for reproduction):
OS.Path.toString {arcs = ["\129|"], isAbs = false, vol = ""};
Summary:
OS.Path.toString raise invalidArc if arcs have ShiftJIS code

Detailed description
OS.Path.toString raises InvalidArc(*1) exception if arcs includes some Shift-JIS
code letters whose 2byte is a special one (at least "|").

This problem may be related to "[#88] Support for UTF8 path names", which has already been fixed.

*1 InvalidArc exception:
uncaught exception InvalidArc
raised at: Basis/Implementation/OS/os-path-fn.sml:47.62-47.72
Additional comments:
I guess it may be difficult to give a general solution which does not collide with the other codes.
So, I hope that a switching I/F or another API like "toStringUnsafe" which just concatinates arcs will be released.


Submitted via web form by Masaya Saito <saitohm@ism.ac.jp>

Comments:

No Comments Have Been Posted

Attached Files:

Changes

No Changes Have Been Made to This Item