Fix FTBFS and crash triggered by <AppSystem>.load_from_desktop_file()

- Avoid error '"iconname" may be used uninitialized in this function'
  by initializing said variable to NULL.

- Define shell_util_get_file_description as static (like the other
  similar functions) to avoid another compiler error.

- Don't save errors from g_key_file_load_from_data_dirs into the
  variable "error" (ie. pass NULL to it instead). Without this,
  gnome-shell crashes if the key file can't be found (with message
  "Error invoking Shell.load_from_desktop_file: Valid key file could
  not be found in search dirs").

- Check the result of the load_from_desktop_file() call in places.js,
  as it may be null.
This commit is contained in:
Siegfried-Angel Gevatter Pujals
2009-08-09 17:39:17 +02:00
parent 5c97d21889
commit 205c57d6af
3 changed files with 11 additions and 9 deletions

View File

@ -652,7 +652,7 @@ shell_app_system_load_from_desktop_file (ShellAppSystem *system,
{
char *app_path = g_build_filename ("applications", filename, NULL);
success = g_key_file_load_from_data_dirs (keyfile, app_path, &full_path,
G_KEY_FILE_NONE, error);
G_KEY_FILE_NONE, NULL);
g_free (app_path);
}
@ -784,7 +784,7 @@ shell_app_info_get_desktop_file_path (ShellAppInfo *info)
GIcon *
shell_app_info_get_icon (ShellAppInfo *info)
{
char *iconname;
char *iconname = NULL;
GIcon *icon;
/* This code adapted from gdesktopappinfo.c

View File

@ -106,7 +106,7 @@ shell_util_get_file_display_for_common_files (GFile *file)
return NULL;
}
char *
static char *
shell_util_get_file_description (GFile *file)
{
GFileInfo *info;