[Fixed] v0.78: BAD Delete/Move Bug - May Corrupt file system

Bugs and Suggestions in XnView MP or XnConvert MP which have been resolved.

Moderator: XnTriq

User avatar
XnTriq
Moderator & Librarian
Posts: 5463
Joined: Sun Sep 25, 2005 3:00 am
Location: Ref Desk

Re: v0.78 Bug: BAD Delete/Move Bug - May Corrupt file system

Post by XnTriq » Thu Mar 10, 2016 12:45 am

Thanks for your determination and persistence in hunting down this serious bug, Erixx haxx!

CameronD
Posts: 303
Joined: Wed Aug 01, 2007 1:28 pm
Location: Australia

Re: v0.78 Bug: BAD Delete/Move Bug - May Corrupt file system

Post by CameronD » Sun Mar 27, 2016 11:14 pm

I have just come across this myself.
Apparently the Win-7 system library has a serious problem with trailing spaces in names and folders, and fails in
windows explorer, cmd.exe, powershell, bash running under msys - to name a few.

There is no filesystem corruption.

Solutions include:
  • rename or delete using something with a different i/o library (xnview (I did not think of this), 7-zip, bash under cygwin)
  • use the UNC local path syntax in cmd.exe: rmdir "\\?\C:\path\to\Copy of "

Mixer
Posts: 166
Joined: Fri Aug 28, 2015 6:24 am

Re: v0.78 Bug: BAD Delete/Move Bug - May Corrupt file system

Post by Mixer » Mon Mar 28, 2016 12:17 am

CameronD wrote:Apparently the Win-7 system library has a serious problem with trailing spaces in names and folders, and fails in windows explorer, cmd.exe, powershell, bash running under msys - to name a few.
This is explicitly declared in
MSDN: Naming Files, Paths, and Namespaces, Naming Conventions wrote:Do not end a file or directory name with a space or a period. Although the underlying file system may support such names, the Windows shell and user interface does not. However, it is acceptable to specify a period as the first character of a name. For example, ".temp".

Erixx haxx
Posts: 330
Joined: Tue Jul 28, 2015 10:37 am

Re: v0.78 Bug: BAD Delete/Move Bug - May Corrupt file system

Post by Erixx haxx » Wed Mar 30, 2016 2:31 pm

It sounds more like a typo in the code to me, and only Win7 is passing it on.

Post Reply