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

Re: How to find out if I own a lock?

From: SteveKing <steveking_at_gmx.ch>
Date: 2005-04-13 20:42:47 CEST

C. Michael Pilato wrote:

>>So now my request for an enhancement to the svn_wc_entry_t struct: a
>>boolean value indicating that an entry is readonly. Since
>>svn_client_status2() already opens those files to check the filedates,
>>that information is 'for free'. Otherwise I have to do a filestat call
>>for every file again, which is very bad (performance wise).
> Could you explain again why you need to know the read-only status?
> You do realize that not all files locked by (someone) have their
> read-only bits set, right? TortoiseSVN being all Explorer-plugin-y
> and stuff, seems that just read-only-ness (for read-only-ness's sake)
> is something folks can get via other routes.

I wanted to show the readonly state if:
- the file is readonly
- it's versioned
- the lock owner is empty (i.e. it's not locked in the wc)

That way users could immediately see that such a file needs to be locked
before they can edit it.

But as the discussion about this on the TSVN list goes, it's not that
important for users. At least not right now, maybe it will be once they
can play around with the locking feature more.

But the readonly flag is only one thing I'd like to get from
svn_client_status2(). I mean that function already does a filestat, so I
think it would be a good idea if it would return the whole filestat
information too (to avoid having clients do additional filestat calls).
I found myself in need of information from a filestat call quite often
(e.g. readonly flag, last-changed-time, last-accessed-time, filesize,
...) and whenever I need that information I have to do filestat calls again.

So even if TSVN doesn't implement such an overlay, I still think it
would be a good idea to return that information in the svn_wc_entry_t
structure too. Clients which don't need that information can ignore it,
but those who need it can reduce the filestat calls a lot.

I don't know how much work this would cause to implement it, but from my
point of view it's just another entry in that struct, filled by the same
subfunction which does the filestat call - if that function isn't called
for some reason leave that entry empty or NULL.


   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Apr 13 20:43:34 2005

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