Re: secur32: check for variable before freeing it

2009-10-14 Thread Austin English
On Wed, Oct 14, 2009 at 4:07 AM, Henri Verbeet wrote: > 2009/10/14 Austin English : >> >> 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; >

Re: secur32: check for variable before freeing it

2009-10-14 Thread Henri Verbeet
2009/10/14 Austin English : > > 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

Re: secur32: check for variable before freeing it

2009-10-13 Thread Vitaliy Margolen
Juan Lang wrote: >> Seems NULL comes from 'handle_idx >= schan_handle_count'. > Right, and that came about due to a double free that Steam seems to like to > do. It could be a false alarm with Steam, after all it's a "silent" crash No memory dump file is created either. Was pointing out a possibl

Re: secur32: check for variable before freeing it

2009-10-13 Thread Juan Lang
> Seems NULL comes from 'handle_idx >= schan_handle_count'. Right, and that came about due to a double free that Steam seems to like to do. --Juan

Re: secur32: check for variable before freeing it

2009-10-13 Thread Austin English
On Tue, Oct 13, 2009 at 11:12 AM, Austin English wrote: > On Tue, Oct 13, 2009 at 8:30 AM, Vitaliy Margolen > wrote: >> Henri Verbeet wrote: >>> 2009/10/13 Austin English :              cred = schan_free_handle(i, SCHAN_HANDLE_CRED); -            pgnutls_certificate_free_credentials(cre

Re: secur32: check for variable before freeing it

2009-10-13 Thread Vitaliy Margolen
Austin English wrote: > What OS? 32/64-bit? 64-bit, Wine of course is 32-bit. Vitaliy.

Re: secur32: check for variable before freeing it

2009-10-13 Thread Austin English
On Tue, Oct 13, 2009 at 8:30 AM, Vitaliy Margolen wrote: > Henri Verbeet wrote: >> 2009/10/13 Austin English : >>>              cred = schan_free_handle(i, SCHAN_HANDLE_CRED); >>> -            pgnutls_certificate_free_credentials(cred->credentials); >>> +            if(cred) >>> pgnutls_certifica

Re: secur32: check for variable before freeing it

2009-10-13 Thread Vitaliy Margolen
Henri Verbeet wrote: > 2009/10/13 Austin English : >> 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

Re: secur32: check for variable before freeing it

2009-10-13 Thread Henri Verbeet
2009/10/13 Austin English : > 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