Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37646888
en ru br
Репозитории ALT
S:3.50.0-alt1
5.1: 2.26.3-alt2
4.1: 2.22.3-alt0.M41.1
4.0: 1.8.3-alt2
3.0: 1.2.3-alt1
www.altlinux.org/Changes

Группа :: Графические оболочки/GNOME
Пакет: evolution-data-server

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: evolution-data-server-1.8.2-msgport-fix.patch
Скачать


--- evolution-data-server-1.8.2/libedataserver/e-msgport.c.msgport-fix	2007-01-10 10:59:44.000000000 -0500
+++ evolution-data-server-1.8.2/libedataserver/e-msgport.c	2007-01-10 11:00:50.000000000 -0500
@@ -487,7 +487,7 @@
 
 struct _EMsgPort {
 	GAsyncQueue *queue;
-	EMsg *cache;
+	GSList *cache;
 	gint pipe[2];  /* on Win32, actually a pair of SOCKETs */
 #ifdef HAVE_NSS
 	PRFileDesc *prpipe[2];
@@ -685,7 +685,7 @@
 
 	/* check the cache first */
 	if (msgport->cache != NULL) {
-		msg = msgport->cache;
+		msg = msgport->cache->data;
 		/* don't clear the cache */
 		g_async_queue_unlock (msgport->queue);
 		return msg;
@@ -697,7 +697,7 @@
 
 	/* The message is not actually "removed" from the EMsgPort until
  	 * e_msgport_get() is called.  So we cache the popped message. */
-	msgport->cache = msg;
+	msgport->cache = g_slist_append (msgport->cache, msg);
 
 	if (msg->flags & MSG_FLAG_SYNC_WITH_PIPE)
 		msgport_sync_with_pipe (msgport->pipe[0]);
@@ -722,8 +722,8 @@
 
 	/* check the cache first */
 	if (msgport->cache != NULL) {
-		msg = msgport->cache;
-		msgport->cache = NULL;
+		msg = msgport->cache->data;
+		msgport->cache = g_slist_delete_link (msgport->cache, msgport->cache);
 		g_async_queue_unlock (msgport->queue);
 		return msg;
 	}
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin