On Tue, Oct 13, 2009 at 11:12 AM, Austin English
<austinengl...@gmail.com> wrote:
> On Tue, Oct 13, 2009 at 8:30 AM, Vitaliy Margolen
> <wine-de...@kievinfo.com> wrote:
>> Henri Verbeet wrote:
>>> 2009/10/13 Austin English <austinengl...@gmail.com>:
>>>>              cred = schan_free_handle(i, SCHAN_HANDLE_CRED);
>>>> -            pgnutls_certificate_free_credentials(cred->credentials);
>>>> +            if(cred) 
>>>> pgnutls_certificate_free_credentials(cred->credentials);
>>> I don't think "cred" is ever supposed to be NULL. Could you add some
>>> traces to see where that handle comes from?
>
> I'll take a look tonight.

static void *schan_free_handle(ULONG_PTR handle_idx, enum
schan_handle_type type)
{
    struct schan_handle *handle;
    void *object;

    if (handle_idx == SCHAN_INVALID_HANDLE) return NULL;
    if (handle_idx >= schan_handle_count) return NULL;

Seems NULL comes from 'handle_idx >= schan_handle_count'.

-- 
-Austin


Reply via email to