rpcrt4
Ove Kaaven
ovek at arcticnet.no
Thu Jan 8 08:43:19 CST 2004
If I'm going to mess around with COM again, I may as well submit some
pieces of the stuff that Mike Hearn still haven't got around to
submit...
Log:
Ove Kaaven <ovek at transgaming.com>
Properly handle destroying the first connection in the connection cache.
Index: dlls/rpcrt4/rpc_binding.c
===================================================================
RCS file: /home/wine/wine/dlls/rpcrt4/rpc_binding.c,v
retrieving revision 1.16
diff -u -r1.16 rpc_binding.c
--- dlls/rpcrt4/rpc_binding.c 20 Nov 2003 23:42:38 -0000 1.16
+++ dlls/rpcrt4/rpc_binding.c 8 Jan 2004 14:28:21 -0000
@@ -136,9 +136,13 @@
EnterCriticalSection(&conn_cache_cs);
PrevConnection = conn_cache;
- while (PrevConnection && PrevConnection->Next != Connection)
- PrevConnection = PrevConnection->Next;
- if (PrevConnection) PrevConnection->Next = Connection->Next;
+ if (PrevConnection == Connection) {
+ conn_cache = Connection->Next;
+ } else {
+ while (PrevConnection && PrevConnection->Next != Connection)
+ PrevConnection = PrevConnection->Next;
+ if (PrevConnection) PrevConnection->Next = Connection->Next;
+ }
LeaveCriticalSection(&conn_cache_cs);
RPCRT4_CloseConnection(Connection);
More information about the wine-patches
mailing list