[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[TSVN] Windows reparse point fails as working copy root

From: Joost-Jan van Klaveren <info_at_prognosis.nl>
Date: 2005-09-16 13:53:36 CEST

A checkout to the root of a so-called reparse point returns an error:
    c:\public\subversion-1.2.3\subversion-1.2.3\subversion\libsvn_client\checkout.c:164: (apr_err=155018)
    svn: 'C:\mount' is already a file/something else

Likewise, a checkin produces an error that it doesn't cope well with these reparse points:
    c:\public\subversion-1.2.3\subversion-1.2.3\subversion\libsvn_wc\lock.c:376: (apr_err=155007)
    svn: 'C:' is not a working copy

Reparse points are used for example if you mount a drive (use cmd tool mountvol) as a folder on another drive.
I experienced this while checking out to the root of a PGP disk (http://www.pgp.com) that was mounted as a folder on another drive.

I guess this qualifies more as a change request than as bug report.

I tried to trace the error back to the root and this is what I found.

fillin_fileinfo (apr/file_io/win32/filtestat.c line 329) translates a Windows OS reported FILE_ATTRIBUTE_REPARSE_POINT into APR_LNK
APR_LNK in turn is flattened by io_check_path (subversion/libsvn_subr/io.c line 139) to *kind = svn_node_file.
When I changed this to *kind = svn_node_dir, svn co and svn ci no longer produced the error and things worked just as I hoped.

Now, that's that then, youd'd say but obviously I would like this to change in the official releases instead of me hacking away each new release.
It could very well be that the correct fix is completely different with regards to overall functionality and cross-platform compatibility so I'd rather leave that to the svn pros.

This was tested with TSVN1.2.2 and Subversion1.2.3 and built from subversion-1.2.3.zip, running on Windows XP SP2 with PGP disk 8.0.3 (but that shouldn't matter if you reproduce this with mountvol of a second partition/drive as a subfolder).

Kind regards,

Joost-Jan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Fri Sep 16 14:09:39 2005

This is an archived mail posted to the TortoiseSVN Dev mailing list.