Menu

#2326 SciTE 5.2.2 becomes 'not responding' opening a file on network share

Bug
closed-fixed
nobody
5
2022-05-22
2022-05-03
No

Windows 10 64bit, SciTE 5.2.2 64bit
If I try to open even a small text file (a few kb) from a corporate network share, Scite becomes unresponsive and I have to kill it. The 5.2.1 version of Scite, instead, works fine.
Moreover, if I share the same files from a PC, the 5.2.2. version seems to work.
I've tested both the single-file version and the full-download version obtaining the same results.
Any clue on what is possibly happening ?

Discussion

  • Neil Hodgson

    Neil Hodgson - 2022-05-03

    This doesn't occur for me on Windows 10 although I can only test against shares from macOS.

    There was some work on pattern matching and relative file paths, particularly when using .editorconfig with editor.config.enable=1. When not using editorconfig the code shouldn't do much unless using the new match properties statement or the $(RelativePath) variable. There is some potential for trouble when parent directories are inaccessible due to permissions.

    Can you show the full path causing the hang? In particular, is it using a conventional disk mapped path like G:\example\x.cxx or a hostname path like \\zebroid\share\example\x.cxx.

    Are you using directory properties with properties.directory.enable=1.

    Since its caused by file location, it's most likely in SciTE, not Scintilla or Lexilla.

    If you can build SciTE, then tracking down which revision causes the problem will help.

    The potentially relevant set of revisions between 5.2.1 and 5.2.2 are:

    5924  Fix showing folded lines when using find strip.
    5923  Prefer _WIN32 as WIN32 not always defined if Windows headers not included.
    5922  Fix bug with path matching when "**" in pattern caused assumption of only ...
    5921  Turn off pattern match testing.
    5919  Update dependencies.
    5918  Add PathMatch module.
    5917  Add "match" statement to local and directories properties to simplify setting ...
    5916  Add $(RelativePath) to directory properties so can be used in "if" statements.
    5915  Feature [feature-requests:#1434] Add scite.ReloadProperties function to Lua.
    5914  Move FilePath, FileNameExt, ... to directory properties and set before reading ...
    5913  Make PropSetFile iteration const.
    5911  Support numeric ranges {start..end} when pattern matching for EditorConfig.
    5910  Fix pattern matching so ? does not match / to match EditorConfig specification.
    5909  On Windows, assume Windows 10 SDK.
    5908  Update minimum Windows SDK to 10 and platform toolset to 142.
    5907  Bug [#2313] Show read-only indicator in title bar.
    5905  Remove macOS special case which is handled in platform subclass.
    5904  Bug [#2313] Fix read-only indicator on GTK.
    
     

    Related

    Bugs: #2313
    Feature Requests: #1434

  • Kabugio Balthagi

    The problem only arises using network paths (the same path mapped as a disk works). The problem also arises in previous SciTE versions when properties.directory.enable is set.

    The ultimate problem lies in the call _wfopen(filename, mode) in src/FilePath.cxx:246. When filename is equal to L"\\\\srv0001\\SciTEDirectory.properties", it waits forever.
    I managed to reproduce it in a simple main and my findings are:

    • \\server\share\non_existent_file --> works
    • \\server\non_existent_file --> does not work

    Would it be possible to modify the IsRoot check to account for the \\server\share case ? I also noticed that in commit [e1be7e] the call to the function GetDirectoryPropertiesFileName has been moved outside the properties.directory.enable check.

     

    Related

    Commit: [e1be7e]


    Last edit: Kabugio Balthagi 2022-05-04
  • Neil Hodgson

    Neil Hodgson - 2022-05-05
    • labels: --> scite, win32, network
    • status: open --> open-fixed
     
  • Neil Hodgson

    Neil Hodgson - 2022-05-05

    Fixed with [acc4a9].

     

    Related

    Commit: [acc4a9]

  • Kabugio Balthagi

    Tested. It works fine now.
    Thank you for your prompt response.

     
  • Neil Hodgson

    Neil Hodgson - 2022-05-22
    • status: open-fixed --> closed-fixed
     

Log in to post a comment.

MongoDB Logo MongoDB