Skip to content

検索パスの区切り文字がWindowsのドライブと競合する #2

@faithandbrave

Description

@faithandbrave

sample/sample.pyにおいて、デフォルトの検索パスに以下のような設定が行われています。

os.environ.setdefault('SSC_SEARCH_PATH',
                          os.path.join(os.getcwd()))

これによって、カレントディレクトリが検索パスになりますが、その際、Windowsでは「C:\current_dir」のようなパス名になります。

一方、utils.pyの中ではこの環境変数を文字':'でsplitしているため、[C, current_dir]のように検索パスが壊れてしまいます。
それによって、それらのパスにos.listdirを適用してディレクトリのファイル一覧をとってくるところで以下のようなエラーが出力され、プログラムが異常終了します。

WindowsError: [Error 3] 指定されたパスが見つかりません。: u'C\\*.*'

この問題を解決するには、以下の選択肢が考えられます:

  1. 検索パスをsplitしない
  2. 検索パスの区切り文字をコロンではなくセミコロンにする
  3. Windowsはサポート対象外とする

方針として1. もしくは2. が採用されるのであれば、私の方で修正し、pull requestを提出しようと思います。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions