From d63d7cefc6547304d499b3ae51227062ff71fbaf Mon Sep 17 00:00:00 2001 From: Paul Mangan Date: Fri, 25 Jan 2002 09:50:28 +0000 Subject: [PATCH 1/1] sync with sylpheed 0.7.0cvs16 --- AUTHORS | 1 + ChangeLog | 12 ++++++++++++ ChangeLog.claws | 5 +++++ ChangeLog.jp | 12 ++++++++++++ INSTALL | 3 ++- INSTALL.jp | 3 ++- configure.in | 2 +- src/gtkstext.c | 18 ++++++++++++++++-- src/procmime.c | 24 ++++++++++++++++-------- 9 files changed, 67 insertions(+), 13 deletions(-) diff --git a/AUTHORS b/AUTHORS index 78aa1d51d..e7ed114a4 100644 --- a/AUTHORS +++ b/AUTHORS @@ -110,3 +110,4 @@ contributors (beside the above; based on Changelog) Masaaki Noro Motonobu Ichimura Luca Rosellini + Yasuzaki Masayoshi diff --git a/ChangeLog b/ChangeLog index fc48a22ae..afc122c19 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2002-01-25 + + * src/procmime.c: + procmime_get_mime_type() + procmime_get_mime_type_table(): made the MIME type search case + insensitive. + * src/gtkstext.c: + gtk_stext_delete_line(): delete newline on empty line. + gtk_stext_delete_to_line_end(): delete newline if cursor is on + the last of line. + (thanks to Yasuzaki Masayoshi.) + 2002-01-23 * src/compose.c diff --git a/ChangeLog.claws b/ChangeLog.claws index bb8b872ed..0e03f4acd 100644 --- a/ChangeLog.claws +++ b/ChangeLog.claws @@ -1,3 +1,8 @@ +2002-01-25 [paul] 0.7.0claws25 + + * sync with sylpheed 0.7.0cvs16 + see ChangeLog entry 2002-01-25 + 2002-01-24 [paul] 0.7.0claws24 * more sync with sylpheed 0.7.0cvs15 diff --git a/ChangeLog.jp b/ChangeLog.jp index 0de66e24b..375cacfd3 100644 --- a/ChangeLog.jp +++ b/ChangeLog.jp @@ -1,3 +1,15 @@ +2002-01-25 + + * src/procmime.c: + procmime_get_mime_type() + procmime_get_mime_type_table(): MIME ¥¿¥¤¥×¤Î¸¡º÷¤òÂ羮ʸ»ú¤ò + ¶èÊ̤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£ + * src/gtkstext.c: + gtk_stext_delete_line(): ¶õ¹Ô¤Ç¤Ï²þ¹Ô¤ò¾Ã¤¹¤è¤¦¤Ë¤·¤¿¡£ + gtk_stext_delete_to_line_end(): ¥«¡¼¥½¥ë¤¬¹ÔËö¤Ë¤¢¤ë¾ì¹ç¤Ï²þ¹Ô + ¤ò¾Ã¤¹¤è¤¦¤Ë¤·¤¿¡£ + (Yasuzaki Masayoshi ¤µ¤ó thanks.) + 2002-01-23 * src/compose.c diff --git a/INSTALL b/INSTALL index 199671383..1434f3047 100644 --- a/INSTALL +++ b/INSTALL @@ -69,6 +69,7 @@ o Conectiva Linux 5.0 o Vector Linux 1.5 o Yellow Dog Linux 2.0 (glibc 2.2.1) o Yellow Dog Linux 2.1 (PowerPC) +o ASP Linux 7.2 (glibc 2.2.4) BSD @@ -105,7 +106,7 @@ o HP-UX 11.0 o HP-UX 11i o Tru64 Unix 5.0 (OSF1 V5.0) o SCO UnixWare 7 -o Mac OS X (Darwin 1.3) + Xtools (has locale problem) +o Mac OS X 10.1.2 (Darwin 5.2) + XDarwin (has locale problem) Others diff --git a/INSTALL.jp b/INSTALL.jp index c90767871..babd1780e 100644 --- a/INSTALL.jp +++ b/INSTALL.jp @@ -68,6 +68,7 @@ o Conectiva Linux 5.0 o Vector Linux 1.5 o Yellow Dog Linux 2.0 (glibc 2.2.1) o Yellow Dog Linux 2.1 (PowerPC) +o ASP Linux 7.2 (glibc 2.2.4) BSD @@ -104,7 +105,7 @@ o HP-UX 11.0 o HP-UX 11i o Tru64 Unix 5.0 (OSF1 V5.0) o SCO UnixWare 7 -o Mac OS X (Darwin 1.3) + Xtools (locale ¤ËÌäÂꤢ¤ê) +o Mac OS X 10.1.2 (Darwin 5.2) + XDarwin (locale ¤ËÌäÂꤢ¤ê) ¤½¤Î¾ diff --git a/configure.in b/configure.in index 0a3d4d9c3..c0556c05e 100644 --- a/configure.in +++ b/configure.in @@ -8,7 +8,7 @@ MINOR_VERSION=7 MICRO_VERSION=0 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=claws24 +EXTRA_VERSION=claws25 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION dnl set $target diff --git a/src/gtkstext.c b/src/gtkstext.c index 66153f1d3..eaa312ec6 100644 --- a/src/gtkstext.c +++ b/src/gtkstext.c @@ -4717,13 +4717,27 @@ void gtk_stext_delete_line (GtkSText *text) { gtk_stext_move_to_column (GTK_EDITABLE (text), 0); - gtk_stext_kill_line (GTK_EDITABLE (text), 1); + if (GTK_STEXT_INDEX(text, GTK_EDITABLE (text)->current_pos) == LINE_DELIM) + { + gtk_stext_kill_char (GTK_EDITABLE (text), 1); + } + else + { + gtk_stext_kill_line (GTK_EDITABLE (text), 1); + } } void gtk_stext_delete_to_line_end (GtkSText *text) { - gtk_stext_kill_line (GTK_EDITABLE (text), 1); + if (GTK_STEXT_INDEX(text, GTK_EDITABLE (text)->current_pos) == LINE_DELIM) + { + gtk_stext_kill_char (GTK_EDITABLE (text), 1); + } + else + { + gtk_stext_kill_line (GTK_EDITABLE (text), 1); + } } static void diff --git a/src/procmime.c b/src/procmime.c index a0a7e33ae..f56dc229d 100644 --- a/src/procmime.c +++ b/src/procmime.c @@ -964,7 +964,8 @@ gchar *procmime_get_mime_type(const gchar *filename) { static GHashTable *mime_type_table = NULL; MimeType *mime_type; - const gchar *ext, *p; + const gchar *p; + gchar *ext; if (!mime_type_table) { mime_type_table = procmime_get_mime_type_table(); @@ -973,11 +974,10 @@ gchar *procmime_get_mime_type(const gchar *filename) filename = g_basename(filename); p = strrchr(filename, '.'); - if (p) - ext = p + 1; - else - return NULL; + if (!p) return NULL; + Xstrdup_a(ext, p + 1, return NULL); + g_strdown(ext); mime_type = g_hash_table_lookup(mime_type_table, ext); if (mime_type) { gchar *str; @@ -1027,15 +1027,23 @@ static GHashTable *procmime_get_mime_type_table(void) for (cur = mime_type_list; cur != NULL; cur = cur->next) { gint i; + gchar *key; mime_type = (MimeType *)cur->data; if (!mime_type->extension) continue; exts = g_strsplit(mime_type->extension, " ", 16); - for (i = 0; exts[i] != NULL; i++) - g_hash_table_insert(table, g_strdup(exts[i]), - mime_type); + for (i = 0; exts[i] != NULL; i++) { + /* make the key case insensitive */ + g_strdown(exts[i]); + /* use previously dup'd key on overwriting */ + if (g_hash_table_lookup(table, exts[i])) + key = exts[i]; + else + key = g_strdup(exts[i]); + g_hash_table_insert(table, key, mime_type); + } g_strfreev(exts); } -- 2.25.1