Reviewed-by: Jeremy Huddleston <[email protected]>

On Apr 4, 2011, at 11:54 AM, Jeremy Huddleston wrote:

>> <  I just pushed them.
> 
> I'll cherry-pick this fix into stable once Keith adds it to master.
> 
> On Apr 4, 2011, at 10:54 AM, Tiago Vignatti wrote:
> 
>> In the case of failure on AllocNewConnection, new_trans_conn cannot be
>> dereferenced because it's already freed. Swapping the order of this logic fix
>> the changes introduced in 04956b80431169e0ae713a3e6ba4cdc157ce3a66.
>> 
>> Signed-off-by: Tiago Vignatti <[email protected]>
>> CC: Jeremy Huddleston <[email protected]>
>> ---
>> os/connection.c |    7 +++----
>> 1 files changed, 3 insertions(+), 4 deletions(-)
>> 
>> diff --git a/os/connection.c b/os/connection.c
>> index 5580fab..0c580ab 100644
>> --- a/os/connection.c
>> +++ b/os/connection.c
>> @@ -852,15 +852,14 @@ EstablishNewConnections(ClientPtr clientUnused, 
>> pointer closure)
>> 
>>      _XSERVTransSetOption(new_trans_conn, TRANS_NONBLOCKING, 1);
>> 
>> +    if(trans_conn->flags & TRANS_NOXAUTH)
>> +        new_trans_conn->flags = new_trans_conn->flags | TRANS_NOXAUTH;
>> +
>>      if (!AllocNewConnection (new_trans_conn, newconn, connect_time))
>>      {
>>          ErrorConnMax(new_trans_conn);
>>          _XSERVTransClose(new_trans_conn);
>>      }
>> -
>> -    if(trans_conn->flags & TRANS_NOXAUTH)
>> -        new_trans_conn->flags = new_trans_conn->flags | TRANS_NOXAUTH;
>> -
>>      }
>> #ifndef WIN32
>>    }
>> -- 
>> 1.7.0.4
>> 
> 
> _______________________________________________
> [email protected]: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
> 

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to