Re: [Evolution-hackers] Is this a locking bug?



On Tue, 2003-12-30 at 10:41, JP Rosevear wrote:
> If it is defined though, the #ifdefs should change nothing in the code.

He's not just adding #ifdefs in his patch, he's also added acquisition
and release of mempool_mutex. His real question is whether or not
acquiring that mutex is required for doing mempool operations. It looks
like it is, but it would be nice to have someone with a clue (i.e., not
me) verify that.

> > Here is the patch:
> > --- /tmp/e-memory.c 2003-12-29 00:07:18.691690575 -0700
> > +++ e-util/e-memory.c       2003-12-28 22:05:51.000000000 -0700
> > @@ -534,10 +534,16 @@
> >   **/
> >  void e_mempool_destroy(MemPool *pool)
> >  {
> > +#ifdef G_THREADS_ENABLED
> > +   g_static_mutex_lock(&mempool_mutex);
> > +#endif
> >     if (pool) {
> >             e_mempool_flush(pool, 1);
> >             e_memchunk_free(mempool_memchunk, pool);
> >     }
> > +#ifdef G_THREADS_ENABLED
> > +   g_static_mutex_unlock(&mempool_mutex);
> > +#endif
> >  }

Ray




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]