Janitorial : check all refcounts in Wine?

Mike Hearn mh at codeweavers.com
Wed Jan 12 08:13:35 CST 2005


On Wed, 12 Jan 2005 14:42:53 +0100, Paul Vriens wrote:
> If I however do a wider search I find a bit more, for example:
> 
> kernel/atom.c:256:               entryPtr->refCount++;

No ..

> msi/handle.c:188:                ret = info->refcount--;

I don't think so, handles are not COM objects and making MSI thread safe
(if it's not already) should be some other Janitorial task.

> rpcrt4/cproxy.c:219:             This->RefCount++;

Possibly but we'll probably get to that as part of the COM work.

> setupapi/virtcopy.c:106:         vhstrlist[n]->refcount++;

Unlikely.

> and so on. I only looked at names containing 'ref'. But there are more
> around where 'ref' is not in the name:
> 
> ole32/compobj.c:                 COM_CurrentInfo()->inits++;

No, because this is TLS.

I wouldn't go overboard on this. A far better thing to do would be to
learn how to write fully thread-safe code then start patching each DLL in
turn to be fully thread safe if it's not already.

thanks -mike




More information about the wine-devel mailing list