Re: Bonobo Unique Application

Alexander Larsson <[email protected]>
Newsgroups gmane.comp.gnome.components
Message-ID <Pine.LNX.4.44.0304111140000.30054-100000@devserv.devel.redhat.com>
On 11 Apr 2003, Gustavo J. A. M.  Carneiro wrote:

> > You need to queue the signal emission in an idle, or you'll create lots of 
> > reentrancy bugs.
> 
>   Reentrancy doesn't cause bugs in the library code, as far as I can
> see.  It could cause bugs in the application code, of course, in which
> case the application programmer is responsible for them.
>   Do you still think I should queue the signal emission, to protect the
> application programmer?  I'm not completely convinced that I should, but
> if you insist, I'm not completely against it either. :)

Sure, it's not bonobos "fault" if the app crashes. But we should design 
libraries that help authors make stable systems, not libraries that 
can't be blamed when the app crashes. 

Every app that uses this API has to queue an idle, or guarantee that the 
"message" signal handler is reentrancy-safe with respect to all code that 
ever makes a corba call, including in libraries the app uses. Since it is 
impossible to guarantee this in any non-trivial app, every app needs to 
queue an idle. Therefore I think it makes much more sense to have bonobo 
do the idle and not every application.

Well, everyone knows what I think about reentrancy, so I'll shut up now.

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
                   [email protected]    [email protected] 
He's a fast talking guitar-strumming librarian with a passion for fast cars. 
She's a disco-crazy tempestuous archaeologist with the power to see death. 
They fight crime!
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.