Bug diff 2.8.7: Separate dir
Jean-Sebastien Trottier
jst1@email.com
Sun Mar 6 11:39:00 GMT 2005
On Sat, Mar 05, 2005 at 06:55:12PM -0800, Brian Dessent wrote:
> Arend-Jan Westhoff wrote:
>
> > It also seems inconsequent if what you say is truely correct and what is
> > intended that when I use my file 'a' from my original example and do the
> > following:
> > copy a b
> > that then:
> > diff ./a .\b
> > says that the files are completely different, whereas:
> > diff ./a .\a
> > says they are completely equal, while files a and b are character for
> > character identical!
>
> I think this happens because diff calls stat() on both files and
> recognizes that they are actually the same file without even reading
> them.
>
> > Therefor in my opinion according to the User's Guide all files
> > on my d: drive should have been opened by diff in text mode,
> > which as we saw is currently not the case.
>
> They will, if you use '/' as the path separator.
>
> The fact is that Cygwin is trying to emulate/provide a POSIX type
> environment to the apps that are running under it, and this means the
> path separator is the '/', as on just about any unix-like system. If
> you want Cygwin to perform newline-translation you should use POSIX
> paths. When you specify a filename like "c:\windows\file.txt" or "a\b"
> you are using Windows style paths and not POSIX style ones, and Cygwin
> just passes them on straight to the underlying Windows system calls.
>
> I don't know enough about Cygwin history or internals to say why this is
> the case. Someone who knows more about it would have to explain it.
> And as you've seen it can lead to confusing situations.
Seems obvious to me that Cygwin is doing the right thing...
Let's say you have c:\windows mounted in binary mode as /winbin and also
mounted as text mode as /wintxt.
Cygwin treats...
- /winbin/file.txt as binary
- /wintxt/file.txt as text and does CRLF translation
- c:\windows\file.txt as binary since it is a native path and it
would obviously be futile to try and map it to a single mount
point
My .02$...
Sebastien
>
> That said, from what I can tell the ability for *some* Cygwin apps to
> accept '\'-style paths in *some* situations is more or less luck.
> 'diff' aside, there are probably many other ported Cygwin apps that will
> choke in strange ways if you try to feed them a path with '\' because
> they are all coded to recognise '/' as a path separator.
>
> The cygpath utility is provided for translating paths, so that if you
> have a windows program calling a cygwin one (or vice versa) you can
> convert the arguments between the two.
>
> Brian
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Problem reports: http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://cygwin.com/pipermail/cygwin/attachments/20050306/117419e9/attachment.sig>
More information about the Cygwin
mailing list