gtk+/gdk/gtk.c (gdk_event_wait) problem with multiapplets



-----BEGIN PGP SIGNED MESSAGE-----

Hi,

after some hours debugging the panel and some applets I found some
problem with gdk_event_wait.

There is some loop (near line 1724):

          list = inputs;
          while (list)
            {
              input = list->data;
              list = list->next;

              condition = 0;
              if (FD_ISSET (input->source, &readfds))
                condition |= GDK_INPUT_READ;
              if (FD_ISSET (input->source, &writefds))
                condition |= GDK_INPUT_WRITE;
              if (FD_ISSET (input->source, &exceptfds))
                condition |= GDK_INPUT_EXCEPTION;

              if (condition && input->function)
                (* input->function) (input->data, input->source,
                                     condition);
            }

The problem is that if you use multiapplets the element `list' is
pointing to at the moment of the `init->function' call is removed
within that function and you get a segfault in the next iteration
of that look.

Any ideas how we can fix this ?

Martin
 
- -----------------------------------------------------------------
   Martin Baulig - Angewandte Mathematik - Universitaet Trier

   baulig@castor.uni-trier.de, http://www.home-of-linux.org/
   Key: 1024-bit key with ID C8178435 created 1997/01/24 
   ID:  67 C1 84 A0 47 F5 11 C5  5F 68 4C 84 99 05 C3 92
   Finger me for public key or fetch finger.txt from the url above
- ------------------------------------------------------------------


-----BEGIN PGP SIGNATURE-----
Version: 2.6.3i
Charset: noconv

iQCVAwUBNcIg/oA8K7jIF4Q1AQGl7QP9GwShyR8cc2pQVBo3VaqmEZVN+uHtR8J+
oB05/U17cYsU3T5yXlHQ+v4TYxbgDV7T3CSlCU+hB/jyUC3BZAneBbmVf94GGX7C
qgMAzMjrS2wlwcTS82hBk47co2phnhhhHMioo6Zq5vM1pL8SgPLqecy871TeLy1x
Ba5AL1J0s10=
=HQD6
-----END PGP SIGNATURE-----



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