You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Barry Scott <ba...@barrys-emacs.org> on 2011/11/04 12:06:15 UTC

svn_wc_adm_probe_open3 fails on windows

I know that you have marked svn_wc_adm_probe_open3 as deprecated
however I assume you expect it to still work. And it does on
Mac OS X.

When called like this:

        svn_error_t *error = svn_wc_adm_probe_open3( &adm_access, NULL, norm_path.c_str(), false, 0, NULL, NULL, pool );

Where norm_path is:

	B:\wc2\test\file1.txt

I get this error:

cmd_info: svn_wc_adm_probe_open error 02C02290
'B:' is not a working copy

Barry


Re: svn_wc_adm_probe_open3 fails on windows

Posted by Barry Scott <ba...@barrys-emacs.org>.
On 4 Nov 2011, at 20:21, Bert Huijben wrote:

> 
> 
>> -----Original Message-----
>> From: Barry Scott [mailto:barry@barrys-emacs.org]
>> Sent: vrijdag 4 november 2011 19:57
>> To: Bert Huijben
>> Cc: 'Subversion Development'
>> Subject: Re: svn_wc_adm_probe_open3 fails on windows
>> 
>> 
>> On 4 Nov 2011, at 11:10, Bert Huijben wrote:
>> 
>>> 
>>> 
>>>> -----Original Message-----
>>>> From: Barry Scott [mailto:barry@barrys-emacs.org]
>>>> Sent: vrijdag 4 november 2011 12:06
>>>> To: Subversion Development
>>>> Subject: svn_wc_adm_probe_open3 fails on windows
>>>> 
>>>> I know that you have marked svn_wc_adm_probe_open3 as deprecated
>>>> however I assume you expect it to still work. And it does on
>>>> Mac OS X.
>>>> 
>>>> When called like this:
>>>> 
>>>>       svn_error_t *error = svn_wc_adm_probe_open3( &adm_access,
>> NULL,
>>>> norm_path.c_str(), false, 0, NULL, NULL, pool );
>>>> 
>>>> Where norm_path is:
>>>> 
>>>> 	B:\wc2\test\file1.txt
>>> 
>>> Did you really pass this value?
>> 
>> That is what was returned from svn_dirent_canonicalize() that is what
>> I should use on paths?
>> 
>> I input b:\wc2\test\file1.txt and get back B:\wc2\test\file1.txt
> 
> I think you want to use svn_dirent_internal_style() for this use case. See
> the documentation on top of svn_dirent_uri.h for more details.

That works using svn_dirent_internal_style(). Is this a matter I just had
to ask or should I have picked up a clue in the API that I needed to use
this function and not svn_dirent_canonicalize()?

The descriptions in the header seem to just ask for "path".

Barry


RE: svn_wc_adm_probe_open3 fails on windows

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: Barry Scott [mailto:barry@barrys-emacs.org]
> Sent: vrijdag 4 november 2011 19:57
> To: Bert Huijben
> Cc: 'Subversion Development'
> Subject: Re: svn_wc_adm_probe_open3 fails on windows
> 
> 
> On 4 Nov 2011, at 11:10, Bert Huijben wrote:
> 
> >
> >
> >> -----Original Message-----
> >> From: Barry Scott [mailto:barry@barrys-emacs.org]
> >> Sent: vrijdag 4 november 2011 12:06
> >> To: Subversion Development
> >> Subject: svn_wc_adm_probe_open3 fails on windows
> >>
> >> I know that you have marked svn_wc_adm_probe_open3 as deprecated
> >> however I assume you expect it to still work. And it does on
> >> Mac OS X.
> >>
> >> When called like this:
> >>
> >>        svn_error_t *error = svn_wc_adm_probe_open3( &adm_access,
> NULL,
> >> norm_path.c_str(), false, 0, NULL, NULL, pool );
> >>
> >> Where norm_path is:
> >>
> >> 	B:\wc2\test\file1.txt
> >
> > Did you really pass this value?
> 
> That is what was returned from svn_dirent_canonicalize() that is what
> I should use on paths?
> 
> I input b:\wc2\test\file1.txt and get back B:\wc2\test\file1.txt

I think you want to use svn_dirent_internal_style() for this use case. See
the documentation on top of svn_dirent_uri.h for more details.

	Bert
> 
> > All Subversion api's (except for a few that explicitly document
otherwise)
> > assume that you pass canonical paths.
> >
> > The canonical path for this path is B:/wc2/test/file1.txt
> >
> >> I get this error:
> >>
> >> cmd_info: svn_wc_adm_probe_open error 02C02290
> >> 'B:' is not a working copy
> >
> > This might be what you get when you pass B:filename, which is what you
> do
> > when you use '\' separators.
> 
> Digging further what I am seeing is that svn_adm_probe_open3 returns an
> entry if the path is a folder and returns the error if it is a file.
> The same code running on Mac OS X can get a entry for folders and files.
> 
> Barry



Re: svn_wc_adm_probe_open3 fails on windows

Posted by Barry Scott <ba...@barrys-emacs.org>.
On 4 Nov 2011, at 11:10, Bert Huijben wrote:

> 
> 
>> -----Original Message-----
>> From: Barry Scott [mailto:barry@barrys-emacs.org]
>> Sent: vrijdag 4 november 2011 12:06
>> To: Subversion Development
>> Subject: svn_wc_adm_probe_open3 fails on windows
>> 
>> I know that you have marked svn_wc_adm_probe_open3 as deprecated
>> however I assume you expect it to still work. And it does on
>> Mac OS X.
>> 
>> When called like this:
>> 
>>        svn_error_t *error = svn_wc_adm_probe_open3( &adm_access, NULL,
>> norm_path.c_str(), false, 0, NULL, NULL, pool );
>> 
>> Where norm_path is:
>> 
>> 	B:\wc2\test\file1.txt
> 
> Did you really pass this value?

That is what was returned from svn_dirent_canonicalize() that is what
I should use on paths?

I input b:\wc2\test\file1.txt and get back B:\wc2\test\file1.txt

> All Subversion api's (except for a few that explicitly document otherwise)
> assume that you pass canonical paths.
> 
> The canonical path for this path is B:/wc2/test/file1.txt
> 
>> I get this error:
>> 
>> cmd_info: svn_wc_adm_probe_open error 02C02290
>> 'B:' is not a working copy
> 
> This might be what you get when you pass B:filename, which is what you do
> when you use '\' separators.

Digging further what I am seeing is that svn_adm_probe_open3 returns an
entry if the path is a folder and returns the error if it is a file.
The same code running on Mac OS X can get a entry for folders and files.

Barry


RE: svn_wc_adm_probe_open3 fails on windows

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: Barry Scott [mailto:barry@barrys-emacs.org]
> Sent: vrijdag 4 november 2011 12:06
> To: Subversion Development
> Subject: svn_wc_adm_probe_open3 fails on windows
> 
> I know that you have marked svn_wc_adm_probe_open3 as deprecated
> however I assume you expect it to still work. And it does on
> Mac OS X.
> 
> When called like this:
> 
>         svn_error_t *error = svn_wc_adm_probe_open3( &adm_access, NULL,
> norm_path.c_str(), false, 0, NULL, NULL, pool );
> 
> Where norm_path is:
> 
> 	B:\wc2\test\file1.txt

Did you really pass this value?

All Subversion api's (except for a few that explicitly document otherwise)
assume that you pass canonical paths.

The canonical path for this path is B:/wc2/test/file1.txt

> I get this error:
> 
> cmd_info: svn_wc_adm_probe_open error 02C02290
> 'B:' is not a working copy

This might be what you get when you pass B:filename, which is what you do
when you use '\' separators.

	Bert
> 
> Barry