Got Evolution crashes?
Joe Marcus Clarke
marcus at FreeBSD.org
Sun Sep 19 11:02:43 PDT 2004
On Fri, 2004-09-17 at 15:55, Vladimir Grebenschikov wrote:
> В чт, 16/09/2004 в 12:56 -0400, Joe Marcus Clarke пишет:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > Anyone experiencing a crash in Evolution 2.0.0 (Evo 2.0.0 ONLY), please
> > apply the attached patch, and rebuild, and let me know if the crashes go
> > away.
>
> Before patch it crashes only on single big mailbox.
> After patch it crashed on every start not depending on mailboxes.
Sorry, I forgot to init the pthread_attr_t. Here is a new patch.
Joe
>
> > Joe
> >
> > - --
> > Joe Marcus Clarke
> > FreeBSD GNOME Team :: gnome at FreeBSD.org
> > FreeNode / #freebsd-gnome
> > http://www.FreeBSD.org/gnome
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v1.2.6 (Darwin)
> > Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
> >
> > iD8DBQFBScXHb2iPiv4Uz4cRAqygAJ9iUFcjBatNJ7fR7ojNS0QMDrqw5ACeKEp3
> > Z0evgiQmezYUMERWEZgBPH0=
> > =mzlY
> > -----END PGP SIGNATURE-----
> > вложение plain text document (patch-e-util_e-msgport.c)
> > --- e-util/e-msgport.c.orig Thu Sep 16 12:48:05 2004
> > +++ e-util/e-msgport.c Thu Sep 16 12:52:52 2004
> > @@ -921,9 +921,12 @@
> > void e_thread_put(EThread *e, EMsg *msg)
> > {
> > pthread_t id;
> > + pthread_attr_t attr;
> > EMsg *dmsg = NULL;
> >
> > pthread_mutex_lock(&e->mutex);
> > + /* Give us a 1 MB thread stack size. */
> > + pthread_attr_setstacksize(&attr, 0x100000);
> >
> > /* the caller forgot to tell us what to do, well, we can't do anything can we */
> > if (e->received == NULL) {
> > @@ -962,13 +965,14 @@
> > e_msgport_put(e->server_port, msg);
> > if (e->waiting == 0
> > && g_list_length(e->id_list) < e->queue_limit
> > - && pthread_create(&id, NULL, thread_dispatch, e) == 0) {
> > + && pthread_create(&id, &attr, thread_dispatch, e) == 0) {
> > struct _thread_info *info = g_malloc0(sizeof(*info));
> > t(printf("created NEW thread %ld\n", id));
> > info->id = id;
> > info->busy = TRUE;
> > e->id_list = g_list_append(e->id_list, info);
> > }
> > + pthread_attr_destroy(&attr);
> > pthread_mutex_unlock(&e->mutex);
> > return;
> > }
> > @@ -977,12 +981,13 @@
> > if (e->id == E_THREAD_NONE) {
> > int err;
> >
> > - if ((err = pthread_create(&e->id, NULL, thread_dispatch, e)) != 0) {
> > + if ((err = pthread_create(&e->id, &attr, thread_dispatch, e)) != 0) {
> > g_warning("Could not create dispatcher thread, message queued?: %s", strerror(err));
> > e->id = E_THREAD_NONE;
> > }
> > }
> >
> > + pthread_attr_destroy(&attr);
> > pthread_mutex_unlock(&e->mutex);
> >
> > if (dmsg) {
> > _______________________________________________
> > freebsd-gnome at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-gnome
> > To unsubscribe, send any mail to "freebsd-gnome-unsubscribe at freebsd.org"
--
Joe Marcus Clarke
FreeBSD GNOME Team :: gnome at FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/freebsd-gnome/attachments/20040919/6e702832/attachment.bin
More information about the freebsd-gnome
mailing list