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

Re: crash when locking a file (client 1.2.1, repository 1.1.x)

From: SteveKing <steveking_at_gmx.ch>
Date: 2005-07-20 20:40:36 CEST

Ben Collins-Sussman wrote:

>> The crash happens in libsvn_subr/auth.c, line 320:
>>
>> /* First, try to save the creds using the provider that produced
>> them. */
>> provider = APR_ARRAY_IDX (state->table->providers,
>> state->provider_idx,
>> svn_auth_provider_object_t *);
>> if (provider->vtable->save_credentials)
>>
>> in the last line, the 'provider' is NULL. So I suggest changing
>> - if (provider->vtable->save_credentials)
>> + if ((provider)&&(provider->vtable->save_credentials))
>
>
> Why on earth would provider be NULL? There's something very wrong here.

When I debug this, the variables have the following values:

state->table->providers->elt_size = 4
state->table->providers->nelts = 3
state->table->providers->nalloc = 4
state->provider_idx = 3

I guess that's why 'provider' is NULL after the APR_ARRAY_IDX() call:
the index is not valid (with three nelts, the highest index would be
two, wouldn't it?).

But I can't find out why provider_idx is three. I have no idea where I
have to look for the code that sets/changes that.

Stefan

-- 
        ___
   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 Jul 20 20:41:29 2005

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