Mercurial > emacs
diff src/gtkutil.c @ 83544:58cf725f5330
Merged from emacs@sv.gnu.org.
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-474
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-475
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-476
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-477
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-478
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-150
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-151
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-152
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-584
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Sun, 03 Dec 2006 12:15:03 +0000 |
parents | 2d56e13fd23d 7b5c0104efb0 |
children | c71725faff1a |
line wrap: on
line diff
--- a/src/gtkutil.c Sat Oct 14 18:40:58 2006 +0000 +++ b/src/gtkutil.c Sun Dec 03 12:15:03 2006 +0000 @@ -523,8 +523,8 @@ char *cp, *up; GError *error = NULL; - while (! (cp = g_locale_to_utf8 (p, -1, &bytes_read, - &bytes_written, &error)) + while (! (cp = g_locale_to_utf8 ((char *)p, -1, &bytes_read, + &bytes_written, &error)) && error->code == G_CONVERT_ERROR_ILLEGAL_SEQUENCE) { ++nr_bad; @@ -541,13 +541,13 @@ if (cp) g_free (cp); up = utf8_str = xmalloc (strlen (str) + nr_bad * 4 + 1); - p = str; - - while (! (cp = g_locale_to_utf8 (p, -1, &bytes_read, + p = (unsigned char *)str; + + while (! (cp = g_locale_to_utf8 ((char *)p, -1, &bytes_read, &bytes_written, &error)) && error->code == G_CONVERT_ERROR_ILLEGAL_SEQUENCE) { - strncpy (up, p, bytes_written); + strncpy (up, (char *)p, bytes_written); sprintf (up + bytes_written, "\\%03o", p[bytes_written]); up[bytes_written+4] = '\0'; up += bytes_written+4; @@ -3362,8 +3362,9 @@ GdkEventButton *event; gpointer user_data; { - g_object_set_data (G_OBJECT (user_data), XG_TOOL_BAR_LAST_MODIFIER, - (gpointer) event->state); + /* Casts to avoid warnings when gpointer is 64 bits and int is 32 bits */ + gpointer ptr = (gpointer) (EMACS_INT) event->state; + g_object_set_data (G_OBJECT (user_data), XG_TOOL_BAR_LAST_MODIFIER, ptr); return FALSE; } @@ -3375,7 +3376,8 @@ { /* The EMACS_INT cast avoids a warning. */ int idx = (int) (EMACS_INT) client_data; - int mod = (int) g_object_get_data (G_OBJECT (w), XG_TOOL_BAR_LAST_MODIFIER); + int mod = (int) (EMACS_INT) g_object_get_data (G_OBJECT (w), + XG_TOOL_BAR_LAST_MODIFIER); FRAME_PTR f = (FRAME_PTR) g_object_get_data (G_OBJECT (w), XG_FRAME_DATA); Lisp_Object key, frame;