Print

Print


This looks like my fault: Commit https://github.com/xrootd/xrootd/commit/a344d5e61f775915465d551a4788891bc2c1193d (a fix for #1898) adds a change of ref count (probably 0 to 1, and then back to 0) of an XrdXrootdFile object, but after Serialize() has already been called on it. (It is called at line 541, XrdXrootdProtocol::do_Close()). I missed that Serialize() leaves the syncWait member of the XrdXrootdFile object set to the address of an XrdSysSemaphore which is instantiated on the stack in Serialize(). Later Ref(-1) calls Post on this pointer, which no longer points to a valid XrdSysSemaphore object.

I'll aim to make a PR to fix this tomorrow, unless somebody else wants to do so.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/1995#issuecomment-1501616966
You are receiving this because you are subscribed to this thread.

Message ID: <[log in to unmask]>

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1