- Update to 2.21.3
- Remove patch for RH bug #215467 (fixed upstream). - Remove patch for GNOME bug #499920 (fixed upstream).
This commit is contained in:
parent
d58a834b7f
commit
d93c79add4
@ -1 +1 @@
|
|||||||
evolution-2.21.2.tar.bz2
|
evolution-2.21.3.tar.bz2
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
--- evolution-2.0.2/mail/em-utils.c.fix-145552 2004-09-24 11:49:29.000000000 -0400
|
--- evolution-2.0.2/mail/em-utils.c.fix-145552 2004-09-24 11:49:29.000000000 -0400
|
||||||
+++ evolution-2.0.2/mail/em-utils.c 2005-08-02 22:42:04.000000000 -0400
|
+++ evolution-2.0.2/mail/em-utils.c 2005-08-02 22:42:04.000000000 -0400
|
||||||
@@ -1919,10 +1919,22 @@
|
@@ -2176,10 +2176,22 @@
|
||||||
* try to do better with the filename check.
|
* try to do better with the filename check.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
+ /* RH bug 145552: code based on _gnome_vfs_get_mime_type_internal:
|
+ /* RH bug 145552: code based on _gnome_vfs_get_mime_type_internal:
|
||||||
+ * So many file types come compressed by gzip
|
+ * So many file types come compressed by gzip
|
||||||
+ * that extensions are more reliable than magic
|
+ * that extensions are more reliable than magic
|
||||||
|
@ -1,48 +0,0 @@
|
|||||||
diff -up evolution-2.21.2/shell/es-event.c.invalid-include evolution-2.21.2/shell/es-event.c
|
|
||||||
--- evolution-2.21.2/shell/es-event.c.invalid-include 2007-10-28 22:02:14.000000000 -0400
|
|
||||||
+++ evolution-2.21.2/shell/es-event.c 2007-11-29 15:01:31.000000000 -0500
|
|
||||||
@@ -30,6 +30,7 @@
|
|
||||||
#include <glib.h>
|
|
||||||
|
|
||||||
#include "es-event.h"
|
|
||||||
+#include "e-shell.h"
|
|
||||||
|
|
||||||
static GObjectClass *eme_parent;
|
|
||||||
static ESEvent *es_event;
|
|
||||||
diff -up evolution-2.21.2/shell/es-event.h.invalid-include evolution-2.21.2/shell/es-event.h
|
|
||||||
--- evolution-2.21.2/shell/es-event.h.invalid-include 2007-10-23 06:03:16.000000000 -0400
|
|
||||||
+++ evolution-2.21.2/shell/es-event.h 2007-11-29 15:01:31.000000000 -0500
|
|
||||||
@@ -26,13 +26,14 @@
|
|
||||||
#include <glib-object.h>
|
|
||||||
|
|
||||||
#include "e-util/e-event.h"
|
|
||||||
-#include "e-shell.h"
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#pragma }
|
|
||||||
#endif /* __cplusplus */
|
|
||||||
|
|
||||||
+struct _EShell; /* Avoid including "e-shell.h" */
|
|
||||||
+
|
|
||||||
typedef struct _ESEvent ESEvent;
|
|
||||||
typedef struct _ESEventClass ESEventClass;
|
|
||||||
|
|
||||||
@@ -56,7 +57,7 @@ typedef struct _ESEventTargetShell ESEve
|
|
||||||
struct _ESEventTargetShell {
|
|
||||||
EEventTarget target;
|
|
||||||
|
|
||||||
- EShell *shell;
|
|
||||||
+ struct _EShell *shell;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct _ESEventTargetState {
|
|
||||||
@@ -91,7 +92,7 @@ GType es_event_get_type(void);
|
|
||||||
ESEvent *es_event_peek(void);
|
|
||||||
|
|
||||||
ESEventTargetState *es_event_target_new_state(ESEvent *emp, int state);
|
|
||||||
-ESEventTargetShell *es_event_target_new_shell(ESEvent *eme, EShell *shell);
|
|
||||||
+ESEventTargetShell *es_event_target_new_shell(ESEvent *eme, struct _EShell *shell);
|
|
||||||
ESEventTargetUpgrade *es_event_target_new_upgrade(ESEvent *emp, int major, int minor, int revision);
|
|
||||||
|
|
||||||
/* ********************************************************************** */
|
|
@ -4,7 +4,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
- insert_preedit_text (text);
|
- insert_preedit_text (text);
|
||||||
+ if (text->im_context_signals_registered)
|
+ if (text->im_context_signals_registered)
|
||||||
+ insert_preedit_text (text);
|
+ insert_preedit_text (text);
|
||||||
|
|
||||||
|
@ -7,12 +7,12 @@
|
|||||||
- gint length = 0, cpos = 0, preedit_length = 0;
|
- gint length = 0, cpos = 0, preedit_length = 0;
|
||||||
+ gint length = 0, cpos = 0;
|
+ gint length = 0, cpos = 0;
|
||||||
gboolean new_attrs = FALSE;
|
gboolean new_attrs = FALSE;
|
||||||
|
|
||||||
if (text->layout == NULL || !GTK_IS_IM_CONTEXT (text->im_context))
|
if (text->layout == NULL || !GTK_IS_IM_CONTEXT (text->im_context))
|
||||||
@@ -295,19 +295,15 @@
|
@@ -295,19 +295,15 @@
|
||||||
|
|
||||||
g_string_prepend_len (tmp_string, text->text,length);
|
g_string_prepend_len (tmp_string, text->text,length);
|
||||||
|
|
||||||
- if (text->preedit_len)
|
- if (text->preedit_len)
|
||||||
- gtk_im_context_get_preedit_string (text->im_context,
|
- gtk_im_context_get_preedit_string (text->im_context,
|
||||||
- &preedit_string, &preedit_attrs,
|
- &preedit_string, &preedit_attrs,
|
||||||
@ -20,39 +20,39 @@
|
|||||||
+ /* we came into this function only when text->preedit_len was not 0
|
+ /* we came into this function only when text->preedit_len was not 0
|
||||||
+ so we can saftely fetch the preedit string */
|
+ so we can saftely fetch the preedit string */
|
||||||
+ gtk_im_context_get_preedit_string (text->im_context, &preedit_string, &preedit_attrs, NULL);
|
+ gtk_im_context_get_preedit_string (text->im_context, &preedit_string, &preedit_attrs, NULL);
|
||||||
|
|
||||||
if (preedit_string && g_utf8_validate (preedit_string, -1, NULL))
|
if (preedit_string && g_utf8_validate (preedit_string, -1, NULL))
|
||||||
- text->preedit_len = preedit_length = strlen (preedit_string);
|
- text->preedit_len = preedit_length = strlen (preedit_string);
|
||||||
- else
|
- else
|
||||||
- text->preedit_len = preedit_length = 0;
|
- text->preedit_len = preedit_length = 0;
|
||||||
-
|
-
|
||||||
- cpos = g_utf8_offset_to_pointer (text->text, text->selection_start) - text->text;
|
- cpos = g_utf8_offset_to_pointer (text->text, text->selection_start) - text->text;
|
||||||
+ {
|
+ {
|
||||||
+ text->preedit_len = strlen (preedit_string);
|
+ text->preedit_len = strlen (preedit_string);
|
||||||
+ cpos = g_utf8_offset_to_pointer (text->text, text->selection_start) - text->text;
|
+ cpos = g_utf8_offset_to_pointer (text->text, text->selection_start) - text->text;
|
||||||
|
|
||||||
- if (preedit_length) {
|
- if (preedit_length) {
|
||||||
g_string_insert (tmp_string, cpos, preedit_string);
|
g_string_insert (tmp_string, cpos, preedit_string);
|
||||||
|
|
||||||
reset_layout_attrs (text);
|
reset_layout_attrs (text);
|
||||||
@@ -320,15 +316,17 @@
|
@@ -320,15 +316,17 @@
|
||||||
|
|
||||||
pango_layout_set_text (text->layout, tmp_string->str, tmp_string->len);
|
pango_layout_set_text (text->layout, tmp_string->str, tmp_string->len);
|
||||||
|
|
||||||
- pango_attr_list_splice (attrs, preedit_attrs, cpos, preedit_length);
|
- pango_attr_list_splice (attrs, preedit_attrs, cpos, preedit_length);
|
||||||
+ pango_attr_list_splice (attrs, preedit_attrs, cpos, text->preedit_len);
|
+ pango_attr_list_splice (attrs, preedit_attrs, cpos, text->preedit_len);
|
||||||
|
|
||||||
if (new_attrs) {
|
if (new_attrs) {
|
||||||
pango_layout_set_attributes (text->layout, attrs);
|
pango_layout_set_attributes (text->layout, attrs);
|
||||||
pango_attr_list_unref (attrs);
|
pango_attr_list_unref (attrs);
|
||||||
- }
|
- }
|
||||||
+ }
|
+ }
|
||||||
|
|
||||||
update_im_cursor_position (text);
|
update_im_cursor_position (text);
|
||||||
}
|
}
|
||||||
+ else
|
+ else
|
||||||
+ text->preedit_len = 0;
|
+ text->preedit_len = 0;
|
||||||
|
|
||||||
if (preedit_string)
|
if (preedit_string)
|
||||||
g_free (preedit_string);
|
g_free (preedit_string);
|
||||||
@@ -385,9 +383,12 @@
|
@@ -385,9 +383,12 @@
|
||||||
@ -61,17 +61,17 @@
|
|||||||
}
|
}
|
||||||
+
|
+
|
||||||
pango_layout_set_attributes (text->layout, attrs);
|
pango_layout_set_attributes (text->layout, attrs);
|
||||||
+
|
+
|
||||||
if (attrs)
|
if (attrs)
|
||||||
pango_attr_list_unref (attrs);
|
pango_attr_list_unref (attrs);
|
||||||
+
|
+
|
||||||
calc_height (text);
|
calc_height (text);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1510,9 +1511,14 @@
|
@@ -1510,9 +1511,14 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
-
|
-
|
||||||
- if (text->im_context_signals_registered)
|
- if (text->im_context_signals_registered)
|
||||||
- insert_preedit_text (text);
|
- insert_preedit_text (text);
|
||||||
@ -83,12 +83,12 @@
|
|||||||
+ * when typing in CJK & using backspace on the preedit */
|
+ * when typing in CJK & using backspace on the preedit */
|
||||||
+ if(!text->preedit_len)
|
+ if(!text->preedit_len)
|
||||||
+ reset_layout (text);
|
+ reset_layout (text);
|
||||||
|
|
||||||
if (!pango_layout_get_text (text->layout))
|
if (!pango_layout_get_text (text->layout))
|
||||||
return;
|
return;
|
||||||
@@ -2220,11 +2226,12 @@
|
@@ -2220,11 +2226,12 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (save_text && save_text->im_context) {
|
if (save_text && save_text->im_context) {
|
||||||
+ gtk_im_context_focus_out(save_text->im_context);
|
+ gtk_im_context_focus_out(save_text->im_context);
|
||||||
g_signal_handlers_disconnect_matched (save_text->im_context,
|
g_signal_handlers_disconnect_matched (save_text->im_context,
|
||||||
@ -99,7 +99,7 @@
|
|||||||
+ save_text->im_context_signals_registered = FALSE;
|
+ save_text->im_context_signals_registered = FALSE;
|
||||||
reset_layout (save_text);
|
reset_layout (save_text);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2240,6 +2247,7 @@
|
@@ -2240,6 +2247,7 @@
|
||||||
G_CALLBACK (e_text_delete_surrounding_cb), text);
|
G_CALLBACK (e_text_delete_surrounding_cb), text);
|
||||||
text->im_context_signals_registered = TRUE;
|
text->im_context_signals_registered = TRUE;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
@@ -416,70 +416,28 @@ get_message_info (MessageList *message_l
|
@@ -416,70 +416,28 @@ get_message_info (MessageList *message_l
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
-static const char *
|
-static const char *
|
||||||
-get_normalised_string (MessageList *message_list, CamelMessageInfo *info, int col)
|
-get_normalised_string (MessageList *message_list, CamelMessageInfo *info, int col)
|
||||||
+static const gchar *
|
+static const gchar *
|
||||||
@ -14,7 +14,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
- char *normalised;
|
- char *normalised;
|
||||||
- EPoolv *poolv;
|
- EPoolv *poolv;
|
||||||
- int index;
|
- int index;
|
||||||
-
|
-
|
||||||
- switch (col) {
|
- switch (col) {
|
||||||
- case COL_SUBJECT_NORM:
|
- case COL_SUBJECT_NORM:
|
||||||
- string = camel_message_info_subject (info);
|
- string = camel_message_info_subject (info);
|
||||||
@ -33,7 +33,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
- index = NORMALISED_LAST;
|
- index = NORMALISED_LAST;
|
||||||
- g_warning ("Should not be reached\n");
|
- g_warning ("Should not be reached\n");
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
- /* slight optimisation */
|
- /* slight optimisation */
|
||||||
- if (string == NULL || string[0] == '\0')
|
- if (string == NULL || string[0] == '\0')
|
||||||
+ GHashTable *hash_table = message_list->normalised_hash;
|
+ GHashTable *hash_table = message_list->normalised_hash;
|
||||||
@ -42,7 +42,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
+
|
+
|
||||||
+ if (string == NULL || *string == '\0')
|
+ if (string == NULL || *string == '\0')
|
||||||
return "";
|
return "";
|
||||||
-
|
-
|
||||||
- poolv = g_hash_table_lookup (message_list->normalised_hash, camel_message_info_uid (info));
|
- poolv = g_hash_table_lookup (message_list->normalised_hash, camel_message_info_uid (info));
|
||||||
- if (poolv == NULL) {
|
- if (poolv == NULL) {
|
||||||
- poolv = e_poolv_new (NORMALISED_LAST);
|
- poolv = e_poolv_new (NORMALISED_LAST);
|
||||||
@ -52,29 +52,29 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
- if (*str)
|
- if (*str)
|
||||||
- return str;
|
- return str;
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
- if (col == COL_SUBJECT_NORM) {
|
- if (col == COL_SUBJECT_NORM) {
|
||||||
- const unsigned char *subject;
|
- const unsigned char *subject;
|
||||||
-
|
-
|
||||||
- subject = (const unsigned char *) string;
|
- subject = (const unsigned char *) string;
|
||||||
- while (!g_ascii_strncasecmp ((char *)subject, "Re:", 3)) {
|
- while (!g_ascii_strncasecmp ((char *)subject, "Re:", 3)) {
|
||||||
- subject += 3;
|
- subject += 3;
|
||||||
-
|
-
|
||||||
- /* jump over any spaces */
|
- /* jump over any spaces */
|
||||||
- while (*subject && isspace ((int) *subject))
|
- while (*subject && isspace ((int) *subject))
|
||||||
- subject++;
|
- subject++;
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
- /* jump over any spaces */
|
- /* jump over any spaces */
|
||||||
- while (*subject && isspace ((int) *subject))
|
- while (*subject && isspace ((int) *subject))
|
||||||
- subject++;
|
- subject++;
|
||||||
-
|
-
|
||||||
- string = (const char *) subject;
|
- string = (const char *) subject;
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
- normalised = g_utf8_collate_key (string, -1);
|
- normalised = g_utf8_collate_key (string, -1);
|
||||||
- e_poolv_set (poolv, index, normalised, TRUE);
|
- e_poolv_set (poolv, index, normalised, TRUE);
|
||||||
-
|
-
|
||||||
- return e_poolv_get (poolv, index);
|
- return e_poolv_get (poolv, index);
|
||||||
+
|
+
|
||||||
+ collation_key = g_hash_table_lookup (hash_table, string);
|
+ collation_key = g_hash_table_lookup (hash_table, string);
|
||||||
@ -90,7 +90,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
+
|
+
|
||||||
+ return collation_key;
|
+ return collation_key;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -1287,12 +1245,23 @@ ml_tree_value_at (ETreeModel *etm, ETree
|
@@ -1287,12 +1245,23 @@ ml_tree_value_at (ETreeModel *etm, ETree
|
||||||
str = camel_message_info_from (msg_info);
|
str = camel_message_info_from (msg_info);
|
||||||
@ -117,7 +117,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
+ return (void *) get_normalised_string (message_list, str);
|
+ return (void *) get_normalised_string (message_list, str);
|
||||||
case COL_SENT: {
|
case COL_SENT: {
|
||||||
ETreePath child;
|
ETreePath child;
|
||||||
|
|
||||||
@@ -1316,7 +1285,8 @@ ml_tree_value_at (ETreeModel *etm, ETree
|
@@ -1316,7 +1285,8 @@ ml_tree_value_at (ETreeModel *etm, ETree
|
||||||
str = camel_message_info_to (msg_info);
|
str = camel_message_info_to (msg_info);
|
||||||
return (void *)(str ? str : "");
|
return (void *)(str ? str : "");
|
||||||
@ -131,7 +131,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
@@ -2066,13 +2036,13 @@ message_list_init (MessageList *message_
|
@@ -2066,13 +2036,13 @@ message_list_init (MessageList *message_
|
||||||
gtk_scrolled_window_set_vadjustment ((GtkScrolledWindow *) message_list, adjustment);
|
gtk_scrolled_window_set_vadjustment ((GtkScrolledWindow *) message_list, adjustment);
|
||||||
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (message_list), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
|
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (message_list), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
|
||||||
|
|
||||||
- message_list->normalised_hash = g_hash_table_new_full (
|
- message_list->normalised_hash = g_hash_table_new_full (
|
||||||
- g_str_hash, g_str_equal,
|
- g_str_hash, g_str_equal,
|
||||||
- (GDestroyNotify) NULL,
|
- (GDestroyNotify) NULL,
|
||||||
@ -140,22 +140,22 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
+ g_hash_table_new (g_str_hash, g_str_equal);
|
+ g_hash_table_new (g_str_hash, g_str_equal);
|
||||||
+
|
+
|
||||||
+ message_list->string_chunk = g_string_chunk_new (1024);
|
+ message_list->string_chunk = g_string_chunk_new (1024);
|
||||||
|
|
||||||
message_list->hidden = NULL;
|
message_list->hidden = NULL;
|
||||||
- message_list->hidden_pool = NULL;
|
- message_list->hidden_pool = NULL;
|
||||||
+ message_list->hidden_string_chunk = NULL;
|
+ message_list->hidden_string_chunk = NULL;
|
||||||
message_list->hide_before = ML_HIDE_NONE_START;
|
message_list->hide_before = ML_HIDE_NONE_START;
|
||||||
message_list->hide_after = ML_HIDE_NONE_END;
|
message_list->hide_after = ML_HIDE_NONE_END;
|
||||||
|
|
||||||
@@ -2166,15 +2136,16 @@ message_list_finalise (GObject *object)
|
@@ -2166,15 +2136,16 @@ message_list_finalise (GObject *object)
|
||||||
struct _MessageListPrivate *p = message_list->priv;
|
struct _MessageListPrivate *p = message_list->priv;
|
||||||
|
|
||||||
g_hash_table_destroy (message_list->normalised_hash);
|
g_hash_table_destroy (message_list->normalised_hash);
|
||||||
+ g_string_chunk_free (message_list->string_chunk);
|
+ g_string_chunk_free (message_list->string_chunk);
|
||||||
|
|
||||||
if (message_list->thread_tree)
|
if (message_list->thread_tree)
|
||||||
camel_folder_thread_messages_unref(message_list->thread_tree);
|
camel_folder_thread_messages_unref(message_list->thread_tree);
|
||||||
|
|
||||||
if (message_list->hidden) {
|
if (message_list->hidden) {
|
||||||
g_hash_table_destroy(message_list->hidden);
|
g_hash_table_destroy(message_list->hidden);
|
||||||
- e_mempool_destroy(message_list->hidden_pool);
|
- e_mempool_destroy(message_list->hidden_pool);
|
||||||
@ -164,18 +164,18 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
- message_list->hidden_pool = NULL;
|
- message_list->hidden_pool = NULL;
|
||||||
+ message_list->hidden_string_chunk = NULL;
|
+ message_list->hidden_string_chunk = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free(message_list->search);
|
g_free(message_list->search);
|
||||||
@@ -3124,6 +3095,9 @@ message_list_set_folder (MessageList *me
|
@@ -3124,6 +3095,9 @@ message_list_set_folder (MessageList *me
|
||||||
|
|
||||||
/* reset the normalised sort performance hack */
|
/* reset the normalised sort performance hack */
|
||||||
g_hash_table_remove_all (message_list->normalised_hash);
|
g_hash_table_remove_all (message_list->normalised_hash);
|
||||||
+
|
+
|
||||||
+ g_string_chunk_free (message_list->string_chunk);
|
+ g_string_chunk_free (message_list->string_chunk);
|
||||||
+ message_list->string_chunk = g_string_chunk_new (1024);
|
+ message_list->string_chunk = g_string_chunk_new (1024);
|
||||||
|
|
||||||
mail_regen_cancel(message_list);
|
mail_regen_cancel(message_list);
|
||||||
|
|
||||||
@@ -3574,14 +3548,14 @@ message_list_hide_uids (MessageList *ml,
|
@@ -3574,14 +3548,14 @@ message_list_hide_uids (MessageList *ml,
|
||||||
MESSAGE_LIST_LOCK (ml, hide_lock);
|
MESSAGE_LIST_LOCK (ml, hide_lock);
|
||||||
if (ml->hidden == NULL) {
|
if (ml->hidden == NULL) {
|
||||||
@ -183,7 +183,7 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
- ml->hidden_pool = e_mempool_new (512, 256, E_MEMPOOL_ALIGN_BYTE);
|
- ml->hidden_pool = e_mempool_new (512, 256, E_MEMPOOL_ALIGN_BYTE);
|
||||||
+ ml->hidden_string_chunk = g_string_chunk_new (512);
|
+ ml->hidden_string_chunk = g_string_chunk_new (512);
|
||||||
}
|
}
|
||||||
|
|
||||||
- uid = e_mempool_strdup (ml->hidden_pool, uids->pdata[i]);
|
- uid = e_mempool_strdup (ml->hidden_pool, uids->pdata[i]);
|
||||||
+ uid = g_string_chunk_insert (ml->hidden_string_chunk, uids->pdata[i]);
|
+ uid = g_string_chunk_insert (ml->hidden_string_chunk, uids->pdata[i]);
|
||||||
g_hash_table_insert (ml->hidden, uid, uid);
|
g_hash_table_insert (ml->hidden, uid, uid);
|
||||||
@ -229,21 +229,21 @@ diff -up evolution-2.21.2/mail/message-list.c.kill-ememory evolution-2.21.2/mail
|
|||||||
camel_file_util_decode_fixed_int32 (in, &upper);
|
camel_file_util_decode_fixed_int32 (in, &upper);
|
||||||
@@ -3662,7 +3636,7 @@ load_hide_state (MessageList *ml)
|
@@ -3662,7 +3636,7 @@ load_hide_state (MessageList *ml)
|
||||||
char *olduid, *uid;
|
char *olduid, *uid;
|
||||||
|
|
||||||
if (camel_file_util_decode_string (in, &olduid) != -1) {
|
if (camel_file_util_decode_string (in, &olduid) != -1) {
|
||||||
- uid = e_mempool_strdup(ml->hidden_pool, olduid);
|
- uid = e_mempool_strdup(ml->hidden_pool, olduid);
|
||||||
+ uid = g_string_chunk_insert(ml->hidden_string_chunk, olduid);
|
+ uid = g_string_chunk_insert(ml->hidden_string_chunk, olduid);
|
||||||
g_free (olduid);
|
g_free (olduid);
|
||||||
g_hash_table_insert(ml->hidden, uid, uid);
|
g_hash_table_insert(ml->hidden, uid, uid);
|
||||||
}
|
}
|
||||||
@@ -3811,12 +3785,12 @@ regen_list_exec (struct _regen_list_msg
|
@@ -3811,12 +3785,12 @@ regen_list_exec (struct _regen_list_msg
|
||||||
|
|
||||||
if (m->ml->hidden == NULL) {
|
if (m->ml->hidden == NULL) {
|
||||||
m->ml->hidden = g_hash_table_new (g_str_hash, g_str_equal);
|
m->ml->hidden = g_hash_table_new (g_str_hash, g_str_equal);
|
||||||
- m->ml->hidden_pool = e_mempool_new (512, 256, E_MEMPOOL_ALIGN_BYTE);
|
- m->ml->hidden_pool = e_mempool_new (512, 256, E_MEMPOOL_ALIGN_BYTE);
|
||||||
+ m->ml->hidden_string_chunk = g_string_chunk_new (512);
|
+ m->ml->hidden_string_chunk = g_string_chunk_new (512);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < uidnew->len; i++) {
|
for (i = 0; i < uidnew->len; i++) {
|
||||||
if (g_hash_table_lookup (m->ml->hidden, uidnew->pdata[i]) == NULL) {
|
if (g_hash_table_lookup (m->ml->hidden, uidnew->pdata[i]) == NULL) {
|
||||||
- char *uid = e_mempool_strdup (m->ml->hidden_pool, uidnew->pdata[i]);
|
- char *uid = e_mempool_strdup (m->ml->hidden_pool, uidnew->pdata[i]);
|
||||||
@ -256,10 +256,10 @@ diff -up evolution-2.21.2/mail/message-list.h.kill-ememory evolution-2.21.2/mail
|
|||||||
+++ evolution-2.21.2/mail/message-list.h 2007-12-01 10:22:46.000000000 -0500
|
+++ evolution-2.21.2/mail/message-list.h 2007-12-01 10:22:46.000000000 -0500
|
||||||
@@ -102,11 +102,12 @@ struct _MessageList {
|
@@ -102,11 +102,12 @@ struct _MessageList {
|
||||||
GHashTable *uid_nodemap; /* uid (from info) -> tree node mapping */
|
GHashTable *uid_nodemap; /* uid (from info) -> tree node mapping */
|
||||||
|
|
||||||
GHashTable *normalised_hash;
|
GHashTable *normalised_hash;
|
||||||
+ GStringChunk *string_chunk;
|
+ GStringChunk *string_chunk;
|
||||||
|
|
||||||
/* UID's to hide. Keys in the mempool */
|
/* UID's to hide. Keys in the mempool */
|
||||||
/* IMPORTANT: You MUST have obtained the hide lock, to operate on this data */
|
/* IMPORTANT: You MUST have obtained the hide lock, to operate on this data */
|
||||||
GHashTable *hidden;
|
GHashTable *hidden;
|
||||||
@ -267,4 +267,4 @@ diff -up evolution-2.21.2/mail/message-list.h.kill-ememory evolution-2.21.2/mail
|
|||||||
+ GStringChunk *hidden_string_chunk;
|
+ GStringChunk *hidden_string_chunk;
|
||||||
int hide_unhidden; /* total length, before hiding */
|
int hide_unhidden; /* total length, before hiding */
|
||||||
int hide_before, hide_after; /* hide ranges of messages */
|
int hide_before, hide_after; /* hide ranges of messages */
|
||||||
|
|
||||||
|
@ -1,86 +0,0 @@
|
|||||||
--- evolution-2.9.3/calendar/gui/e-meeting-list-view.c.meeting-list-view 2006-12-11 23:13:47.000000000 -0500
|
|
||||||
+++ evolution-2.9.3/calendar/gui/e-meeting-list-view.c 2006-12-11 23:14:17.000000000 -0500
|
|
||||||
@@ -623,18 +623,45 @@
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
+void
|
|
||||||
+attendee_added_cb (EMeetingStore *store, GtkTreePath *path,
|
|
||||||
+ GtkTreeIter *iter, EMeetingListView *view)
|
|
||||||
+{
|
|
||||||
+ EMeetingAttendee *attendee;
|
|
||||||
+ gint row;
|
|
||||||
+
|
|
||||||
+ /* Add the new attendee to the name selector. */
|
|
||||||
+ row = gtk_tree_path_get_indices (path) [0];
|
|
||||||
+ attendee = e_meeting_store_find_attendee_at_row (store, row);
|
|
||||||
+ e_meeting_list_view_add_attendee_to_name_selector (view, attendee);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+void
|
|
||||||
+attendee_deleted_cb (EMeetingStore *store, GtkTreePath *path,
|
|
||||||
+ EMeetingListView *view)
|
|
||||||
+{
|
|
||||||
+ EMeetingAttendee *attendee;
|
|
||||||
+ gint row;
|
|
||||||
+
|
|
||||||
+ /* Remove the old attendee from the name selector. */
|
|
||||||
+ row = gtk_tree_path_get_indices (path) [0];
|
|
||||||
+ attendee = e_meeting_store_find_attendee_at_row (store, row);
|
|
||||||
+ e_meeting_list_view_remove_attendee_from_name_selector (view, attendee);
|
|
||||||
+}
|
|
||||||
|
|
||||||
EMeetingListView *
|
|
||||||
e_meeting_list_view_new (EMeetingStore *store)
|
|
||||||
{
|
|
||||||
- EMeetingListView *view = g_object_new (E_TYPE_MEETING_LIST_VIEW, NULL);
|
|
||||||
+ EMeetingListView *view;
|
|
||||||
GtkTreeSelection *selection;
|
|
||||||
|
|
||||||
- if (view) {
|
|
||||||
- view->priv->store = store;
|
|
||||||
- gtk_tree_view_set_model (GTK_TREE_VIEW (view), GTK_TREE_MODEL (store));
|
|
||||||
- build_table (view);
|
|
||||||
- }
|
|
||||||
+ view = g_object_new (E_TYPE_MEETING_LIST_VIEW, NULL);
|
|
||||||
+ view->priv->store = store;
|
|
||||||
+ gtk_tree_view_set_model (GTK_TREE_VIEW (view), GTK_TREE_MODEL (store));
|
|
||||||
+ build_table (view);
|
|
||||||
+
|
|
||||||
+ g_signal_connect (store, "row-inserted", G_CALLBACK (attendee_added_cb), view);
|
|
||||||
+ g_signal_connect (store, "row-deleted", G_CALLBACK (attendee_deleted_cb), view);
|
|
||||||
|
|
||||||
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(view));
|
|
||||||
g_signal_connect (selection, "changed", G_CALLBACK (row_activated_cb), view);
|
|
||||||
--- evolution-2.9.3/calendar/gui/e-meeting-store.c.meeting-list-view 2006-12-04 10:44:42.000000000 -0500
|
|
||||||
+++ evolution-2.9.3/calendar/gui/e-meeting-store.c 2006-12-11 23:14:17.000000000 -0500
|
|
||||||
@@ -794,14 +794,13 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
if (row != -1) {
|
|
||||||
-
|
|
||||||
- g_ptr_array_remove_index (store->priv->attendees, row);
|
|
||||||
- g_object_unref (attendee);
|
|
||||||
-
|
|
||||||
path = gtk_tree_path_new ();
|
|
||||||
gtk_tree_path_append_index (path, row);
|
|
||||||
gtk_tree_model_row_deleted (GTK_TREE_MODEL (store), path);
|
|
||||||
gtk_tree_path_free (path);
|
|
||||||
+
|
|
||||||
+ g_ptr_array_remove_index (store->priv->attendees, row);
|
|
||||||
+ g_object_unref (attendee);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -815,10 +814,10 @@
|
|
||||||
|
|
||||||
for (i = 0; i < store->priv->attendees->len; i++) {
|
|
||||||
EMeetingAttendee *attendee = g_ptr_array_index (store->priv->attendees, i);
|
|
||||||
- g_object_unref (attendee);
|
|
||||||
|
|
||||||
gtk_tree_model_row_deleted (GTK_TREE_MODEL (store), path);
|
|
||||||
gtk_tree_path_next (path);
|
|
||||||
+ g_object_unref (attendee);
|
|
||||||
}
|
|
||||||
|
|
||||||
g_ptr_array_set_size (store->priv->attendees, 0);
|
|
@ -44,8 +44,8 @@
|
|||||||
### Abstract ###
|
### Abstract ###
|
||||||
|
|
||||||
Name: evolution
|
Name: evolution
|
||||||
Version: 2.21.2
|
Version: 2.21.3
|
||||||
Release: 4%{?dist}
|
Release: 1%{?dist}
|
||||||
License: GPLv2 and GFDL+
|
License: GPLv2 and GFDL+
|
||||||
Group: Applications/Productivity
|
Group: Applications/Productivity
|
||||||
Summary: GNOME's next-generation groupware suite
|
Summary: GNOME's next-generation groupware suite
|
||||||
@ -110,16 +110,10 @@ Patch27: evolution-2.9.1-im-context-reset.patch
|
|||||||
# RH bug #215478 / GNOME bug #383842
|
# RH bug #215478 / GNOME bug #383842
|
||||||
Patch30: evolution-2.9.3-source-path-entry.patch
|
Patch30: evolution-2.9.3-source-path-entry.patch
|
||||||
|
|
||||||
# RH bug #215467 / GNOME bug #380644
|
|
||||||
Patch31: evolution-2.9.3-meeting-list-view.patch
|
|
||||||
|
|
||||||
# GNOME bug #376991
|
# GNOME bug #376991
|
||||||
# XXX Disabled due to outstanding issues.
|
# XXX Disabled due to outstanding issues.
|
||||||
#Patch33: evolution-2.10.0-e-passwords.patch
|
#Patch33: evolution-2.10.0-e-passwords.patch
|
||||||
|
|
||||||
# GNOME bug #499920
|
|
||||||
Patch34: evolution-2.21.2-invalid-include.patch
|
|
||||||
|
|
||||||
## Dependencies ###
|
## Dependencies ###
|
||||||
|
|
||||||
Requires(post): GConf2
|
Requires(post): GConf2
|
||||||
@ -252,9 +246,7 @@ PalmOS<tm> devices with %{name}.
|
|||||||
%patch27 -p1 -b .im-context-reset
|
%patch27 -p1 -b .im-context-reset
|
||||||
#%patch29 -p1 -b .view-attachment-uri
|
#%patch29 -p1 -b .view-attachment-uri
|
||||||
%patch30 -p1 -b .source-path-entry
|
%patch30 -p1 -b .source-path-entry
|
||||||
%patch31 -p1 -b .meeting-list-view
|
|
||||||
#%patch33 -p1 -b .e-passwords
|
#%patch33 -p1 -b .e-passwords
|
||||||
%patch34 -p1 -b .invalid-include
|
|
||||||
|
|
||||||
mkdir -p krb5-fakeprefix/include
|
mkdir -p krb5-fakeprefix/include
|
||||||
mkdir -p krb5-fakeprefix/lib
|
mkdir -p krb5-fakeprefix/lib
|
||||||
@ -680,6 +672,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Dec 03 2007 Matthew Barnes <mbarnes@redhat.com> - 2.21.3-1.fc9
|
||||||
|
- Update to 2.21.3
|
||||||
|
- Remove patch for RH bug #215467 (fixed upstream).
|
||||||
|
- Remove patch for GNOME bug #499920 (fixed upstream).
|
||||||
|
|
||||||
* Sat Dec 01 2007 Matthew Barnes <mbarnes@redhat.com> - 2.21.2-4.fc9
|
* Sat Dec 01 2007 Matthew Barnes <mbarnes@redhat.com> - 2.21.2-4.fc9
|
||||||
- Fix a corrupted patch that caused GNOME bug #499291.
|
- Fix a corrupted patch that caused GNOME bug #499291.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user