Subject: Re: bug#70760: 29.3.50; core dumps when copy in other apps

From: Eli Zaretskii <[email-masked]>
Date: Sat, 18 May 2024 15:09:41 +0300

> From: Michael Albinus <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Sat, 18 May 2024 13:54:24 +0200
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> > You are saying that output of some subprocess could be interpreted as
> > D-Bus event?  How do we know which inputs to try to interpret as D-Bus
> > events?  IOW, can you hypothesize how could we take some non-D-Bus
> > input and end up interpreting it as D-Bus?
> 
> No. I'm saying that dbusbind.c uses add_write_fd and add_read_fd, which
> are defined in process.c.
> 
> I don't believe that file descriptors of other subprocesses will provide
> data for dbusbind.c. The registered file descriptors for D-Bus use the
> callback xd_read_queued_messages, and only this callback reads the data
> from the file descriptors, and generates D-Bus events.
> 
> This looks stable to me, and this architecture exists for many years.

OK.  So how could a non-D-Bus event end up being interpreted as a
D-Bus event?  Can we arrange for some breakpoints or watchpoints to
try to catch these inputs on their way to being interpreted as D-Bus
events, so that we could try figuring out where did those inputs come
from?

The only hint we have until now is that this happens when copying
stuff from other applications.  Does that ring any bells or suggest
any ideas?