- don't expect utf-8 usernames for face browser (bug 235351).
This commit is contained in:
		
							parent
							
								
									678bde4b54
								
							
						
					
					
						commit
						2b7de6018b
					
				
							
								
								
									
										44
									
								
								gdm-2.18.0-dont-expect-utf8.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								gdm-2.18.0-dont-expect-utf8.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,44 @@ | |||||||
|  | --- gdm-2.18.0/gui/greeter/greeter_item_ulist.c.dont-expect-utf8	2007-04-05 11:19:40.000000000 -0400
 | ||||||
|  | +++ gdm-2.18.0/gui/greeter/greeter_item_ulist.c	2007-04-05 11:39:06.000000000 -0400
 | ||||||
|  | @@ -168,6 +168,29 @@
 | ||||||
|  |  			&size_of_users, GDM_IS_LOCAL, !DOING_GDM_DEVELOPMENT); | ||||||
|  |  } | ||||||
|  |   | ||||||
|  | +static gchar *
 | ||||||
|  | +greeter_string_to_escaped_utf8 (const gchar *raw_string)
 | ||||||
|  | +{
 | ||||||
|  | +	gchar *utf8_string, *escaped_string, *p;
 | ||||||
|  | +        const gchar *q;
 | ||||||
|  | +
 | ||||||
|  | +	utf8_string = g_strdup (raw_string);
 | ||||||
|  | +        p = utf8_string;
 | ||||||
|  | +	while ((*p != '\0') && 
 | ||||||
|  | +               !g_utf8_validate (p, -1, &q)) {
 | ||||||
|  | +                p = (gchar *) q;
 | ||||||
|  | +		*p = '?';
 | ||||||
|  | +		p++;
 | ||||||
|  | +	}
 | ||||||
|  | +
 | ||||||
|  | +	g_assert (g_utf8_validate (utf8_string, -1, NULL));
 | ||||||
|  | +
 | ||||||
|  | +	escaped_string = g_markup_escape_text (utf8_string, -1);
 | ||||||
|  | +        g_free (utf8_string);
 | ||||||
|  | +
 | ||||||
|  | +	return escaped_string;
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  |  static void | ||||||
|  |  greeter_populate_user_list (GtkTreeModel *tm) | ||||||
|  |  { | ||||||
|  | @@ -181,9 +204,9 @@
 | ||||||
|  |  		gboolean    active; | ||||||
|  |   | ||||||
|  |  		if (usr->gecos && strcmp (usr->gecos, "") != 0) { | ||||||
|  | -			name = g_markup_escape_text (usr->gecos, -1);
 | ||||||
|  | +			name = greeter_string_to_escaped_utf8 (usr->gecos);
 | ||||||
|  |  		} else { | ||||||
|  | -			name = g_markup_escape_text (usr->login, -1);
 | ||||||
|  | +			name = greeter_string_to_escaped_utf8 (usr->login);
 | ||||||
|  |  		} | ||||||
|  |   | ||||||
|  |  		if (g_hash_table_lookup (displays_hash, usr->login)) | ||||||
							
								
								
									
										8
									
								
								gdm.spec
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								gdm.spec
									
									
									
									
									
								
							| @ -16,7 +16,7 @@ | |||||||
| Summary: The GNOME Display Manager | Summary: The GNOME Display Manager | ||||||
| Name: gdm | Name: gdm | ||||||
| Version: 2.18.0 | Version: 2.18.0 | ||||||
| Release: 7%{?dist} | Release: 8%{?dist} | ||||||
| Epoch: 1 | Epoch: 1 | ||||||
| License: LGPL/GPL | License: LGPL/GPL | ||||||
| Group: User Interface/X | Group: User Interface/X | ||||||
| @ -70,6 +70,8 @@ Patch34: gdm-2.18.0-add-lowres-fix.patch | |||||||
| # http://bugzilla.gnome.org/show_bug.cgi?id=424229 | # http://bugzilla.gnome.org/show_bug.cgi?id=424229 | ||||||
| Patch35: gdm-2.18.0-dont-strcpy-overlapping-strings.patch | Patch35: gdm-2.18.0-dont-strcpy-overlapping-strings.patch | ||||||
| 
 | 
 | ||||||
|  | Patch36: gdm-2.18.0-dont-expect-utf8.patch | ||||||
|  | 
 | ||||||
| BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  | ||||||
| 
 | 
 | ||||||
| Prereq: /usr/sbin/useradd | Prereq: /usr/sbin/useradd | ||||||
| @ -156,6 +158,7 @@ Extra icons / faces for the GNOME Display Manager. | |||||||
| %patch33 -p0 -b .pass-ats-to-session | %patch33 -p0 -b .pass-ats-to-session | ||||||
| %patch34 -p1 -b .add-lowres-fix | %patch34 -p1 -b .add-lowres-fix | ||||||
| %patch35 -p1 -b .dont-strcpy-overlapping-strings | %patch35 -p1 -b .dont-strcpy-overlapping-strings | ||||||
|  | %patch36 -p1 -b .dont-expect-utf8 | ||||||
| 
 | 
 | ||||||
| %build | %build | ||||||
| cp -f %{SOURCE1} config/gdm | cp -f %{SOURCE1} config/gdm | ||||||
| @ -376,6 +379,9 @@ fi | |||||||
| %{_datadir}/pixmaps/faces/extras/*.jpg | %{_datadir}/pixmaps/faces/extras/*.jpg | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Thu Apr  5 2007 Ray Strode <rstrode@redhat.com> - 1:2.18.0-8 | ||||||
|  | - don't expect utf-8 usernames for face browser (bug 235351). | ||||||
|  | 
 | ||||||
| * Thu Mar 29 2007 Ray Strode <rstrode@redhat.com> - 1:2.18.0-7 | * Thu Mar 29 2007 Ray Strode <rstrode@redhat.com> - 1:2.18.0-7 | ||||||
| - don't strcpy overlapping strings (bug 208181). | - don't strcpy overlapping strings (bug 208181). | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user