[gnome-packagekit/glib2: 68/79] moo
- From: Richard Hughes <rhughes src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-packagekit/glib2: 68/79] moo
- Date: Tue, 6 Oct 2009 09:50:26 +0000 (UTC)
commit 39d294eb86d183705e90c0608f5d982e5c1b62b9
Author: Richard Hughes <richard hughsie com>
Date: Sun Oct 4 09:54:32 2009 +0100
moo
src/gpk-check-update.c | 40 ++++++++++++++++++++++++++++++++++++
src/gpk-dbus-task.c | 21 ++++++++++++++++++-
src/gpk-firmware.c | 20 ++++++++++++++++++
src/gpk-hardware.c | 20 ++++++++++++++++++
src/gpk-language.c | 2 +-
src/gpk-service-pack.c | 31 ++++++++++++++++++++++++++++
src/gpk-update-viewer.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++-
src/gpk-watch.c | 2 +-
8 files changed, 184 insertions(+), 4 deletions(-)
---
diff --git a/src/gpk-check-update.c b/src/gpk-check-update.c
index 8f851b6..230e177 100644
--- a/src/gpk-check-update.c
+++ b/src/gpk-check-update.c
@@ -452,6 +452,7 @@ gpk_check_update_update_system_finished_cb (PkTask *task, GAsyncResult *res, Gpk
{
PkResults *results;
GError *error = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_task_generic_finish (task, res, &error);
@@ -465,6 +466,13 @@ gpk_check_update_update_system_finished_cb (PkTask *task, GAsyncResult *res, Gpk
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to update system: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* play the sound, using sounds from the naming spec */
ca_context_play (ca_gtk_context_get (), 0,
/* TODO: add a new sound to the spec */
@@ -478,6 +486,8 @@ gpk_check_update_update_system_finished_cb (PkTask *task, GAsyncResult *res, Gpk
gpk_check_update_finished_notify (cupdate, results);
cupdate->priv->number_updates_critical_last_shown = 0;
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (results != NULL)
g_object_unref (results);
}
@@ -858,6 +868,7 @@ gpk_check_update_get_updates_finished_cb (GObject *object, GAsyncResult *res, Gp
gchar **package_ids;
gchar **split;
GPtrArray *array = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (PK_CLIENT(client), res, &error);
@@ -867,6 +878,13 @@ gpk_check_update_get_updates_finished_cb (GObject *object, GAsyncResult *res, Gp
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get updates: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* sort by name */
// pk_package_list_sort (array);
@@ -1011,6 +1029,8 @@ gpk_check_update_get_updates_finished_cb (GObject *object, GAsyncResult *res, Gp
/* shouldn't happen */
egg_warning ("unknown update mode");
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (status_security != NULL)
g_string_free (status_security, TRUE);
if (status_tooltip != NULL)
@@ -1172,6 +1192,7 @@ gpk_check_update_refresh_cache_finished_cb (GObject *object, GAsyncResult *res,
PkClient *client = PK_CLIENT(object);
PkResults *results;
GError *error = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (PK_CLIENT(client), res, &error);
@@ -1180,7 +1201,16 @@ gpk_check_update_refresh_cache_finished_cb (GObject *object, GAsyncResult *res,
g_error_free (error);
goto out;
}
+
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to refresh the cache: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (results != NULL)
g_object_unref (results);
}
@@ -1226,6 +1256,7 @@ gpk_check_update_get_distro_upgrades_finished_cb (GObject *object, GAsyncResult
const gchar *title;
NotifyNotification *notification;
GString *string = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (PK_CLIENT(client), res, &error);
@@ -1235,6 +1266,13 @@ gpk_check_update_get_distro_upgrades_finished_cb (GObject *object, GAsyncResult
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get upgrades: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* process results */
array = pk_results_get_distro_upgrade_array (results);
@@ -1281,6 +1319,8 @@ gpk_check_update_get_distro_upgrades_finished_cb (GObject *object, GAsyncResult
g_error_free (error);
}
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (string != NULL)
diff --git a/src/gpk-dbus-task.c b/src/gpk-dbus-task.c
index 70bf13a..c777d6f 100644
--- a/src/gpk-dbus-task.c
+++ b/src/gpk-dbus-task.c
@@ -264,6 +264,7 @@ gpk_dbus_task_install_packages_cb (PkTask *task, GAsyncResult *res, GpkDbusTask
GError *error = NULL;
GError *error_dbus = NULL;
PkResults *results = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_task_generic_finish (task, res, &error);
@@ -275,7 +276,16 @@ gpk_dbus_task_install_packages_cb (PkTask *task, GAsyncResult *res, GpkDbusTask
g_error_free (error);
goto out;
}
+
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to install package: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (results != NULL)
g_object_unref (results);
}
@@ -545,6 +555,7 @@ gpk_dbus_task_install_files_cb (PkTask *task, GAsyncResult *res, GpkDbusTask *dt
PkResults *results = NULL;
guint length;
const gchar *title;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_task_generic_finish (task, res, &error);
@@ -558,7 +569,16 @@ gpk_dbus_task_install_files_cb (PkTask *task, GAsyncResult *res, GpkDbusTask *dt
g_error_free (error);
goto out;
}
+
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to install file: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (results != NULL)
g_object_unref (results);
}
@@ -697,7 +717,6 @@ gpk_dbus_task_progress_cb (PkProgress *progress, PkProgressType type, GpkDbusTas
"percentage", &percentage,
"remaining-time", &remaining_time,
"status", &status,
-// "xxxxxxxx", &xxxxxxxxxx,
NULL);
if (type == PK_PROGRESS_TYPE_PACKAGE_ID)
diff --git a/src/gpk-firmware.c b/src/gpk-firmware.c
index a96bc7b..23d37a1 100644
--- a/src/gpk-firmware.c
+++ b/src/gpk-firmware.c
@@ -356,6 +356,7 @@ gpk_firmware_install_packages_cb (GObject *object, GAsyncResult *res, GpkFirmwar
const GpkFirmwareRequest *req;
gboolean ret;
guint i;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
@@ -365,6 +366,13 @@ gpk_firmware_install_packages_cb (GObject *object, GAsyncResult *res, GpkFirmwar
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to install file: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* go through all the requests, and find the worst type */
array = firmware->priv->array_requested;
for (i=0; i<array->len; i++) {
@@ -395,6 +403,8 @@ gpk_firmware_install_packages_cb (GObject *object, GAsyncResult *res, GpkFirmwar
/* clear array */
g_ptr_array_set_size (firmware->priv->array_requested, 0);
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -482,6 +492,7 @@ gpk_firmware_check_available (GpkFirmware *firmware, const gchar *filename)
PkBitfield filter;
PkResults *results;
gchar **values = NULL;
+ PkItemErrorCode *error_item = NULL;
/* search for newest not installed package */
filter = pk_bitfield_from_enums (PK_FILTER_ENUM_NOT_INSTALLED, PK_FILTER_ENUM_NEWEST, -1);
@@ -493,6 +504,13 @@ gpk_firmware_check_available (GpkFirmware *firmware, const gchar *filename)
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to search file: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* make sure we have one package */
array = pk_results_get_package_array (results);
if (array->len == 0)
@@ -503,6 +521,8 @@ gpk_firmware_check_available (GpkFirmware *firmware, const gchar *filename)
item = pk_item_package_ref (g_ptr_array_index (array, 0));
out:
g_strfreev (values);
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_object_unref (array);
if (results != NULL)
diff --git a/src/gpk-hardware.c b/src/gpk-hardware.c
index eca4b08..52f0434 100644
--- a/src/gpk-hardware.c
+++ b/src/gpk-hardware.c
@@ -78,6 +78,7 @@ gpk_hardware_install_packages_cb (GObject *object, GAsyncResult *res, GpkHardwar
PkClient *client = PK_CLIENT (object);
GError *error = NULL;
PkResults *results = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
@@ -86,7 +87,16 @@ gpk_hardware_install_packages_cb (GObject *object, GAsyncResult *res, GpkHardwar
g_error_free (error);
goto out;
}
+
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to install file: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (results != NULL)
g_object_unref (results);
}
@@ -136,6 +146,7 @@ gpk_hardware_what_provides_cb (GObject *object, GAsyncResult *res, GpkHardware *
gchar *package = NULL;
GPtrArray *array = NULL;
const PkItemPackage *item = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
@@ -145,6 +156,13 @@ gpk_hardware_what_provides_cb (GObject *object, GAsyncResult *res, GpkHardware *
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get provides: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* If there are no driver packages available just return */
array = pk_results_get_package_array (results);
if (array->len == 0) {
@@ -184,6 +202,8 @@ out:
g_free (package);
g_free (message);
g_free (body);
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
diff --git a/src/gpk-language.c b/src/gpk-language.c
index efd8347..66c1167 100644
--- a/src/gpk-language.c
+++ b/src/gpk-language.c
@@ -244,7 +244,7 @@ gpk_language_test (EggTest *test)
/************************************************************/
egg_test_title (test, "get data (missing)");
- lang = gpk_language_iso639_to_language (language, "XxX");
+ lang = gpk_language_iso639_to_language (language, "notgoingtoexist");
if (lang == NULL)
egg_test_success (test, NULL);
else
diff --git a/src/gpk-service-pack.c b/src/gpk-service-pack.c
index 3fa3490..f5f15e3 100644
--- a/src/gpk-service-pack.c
+++ b/src/gpk-service-pack.c
@@ -184,6 +184,7 @@ gpk_pack_resolve_package_id (const gchar *package)
GError *error = NULL;
const PkItemPackage *item;
PkResults *results;
+ PkItemErrorCode *error_item = NULL;
/* get package array */
packages = g_strsplit (package, ";", 0);
@@ -194,6 +195,13 @@ gpk_pack_resolve_package_id (const gchar *package)
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to resolve: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* get the deps */
array = pk_results_get_package_array (results);
@@ -210,6 +218,8 @@ gpk_pack_resolve_package_id (const gchar *package)
package_id = g_strdup (item->package_id);
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -305,6 +315,7 @@ gpk_pack_copy_package_lists (const gchar *filename, GError **error)
GError *error_local = NULL;
PkResults *results;
gchar *data = NULL;
+ PkItemErrorCode *error_item = NULL;
/* get package array */
results = pk_client_get_packages (client, pk_bitfield_value (PK_FILTER_ENUM_INSTALLED), NULL, NULL, NULL, &error_local);
@@ -315,6 +326,13 @@ gpk_pack_copy_package_lists (const gchar *filename, GError **error)
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get packages: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* get the deps */
array = pk_results_get_package_array (results);
@@ -327,6 +345,8 @@ gpk_pack_copy_package_lists (const gchar *filename, GError **error)
goto out;
}
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -464,6 +484,7 @@ gpk_pack_button_create_cb (GtkWidget *widget2, gpointer data)
gboolean ret;
gboolean use_default = FALSE;
GtkProgressBar *progress_bar;
+ PkItemErrorCode *error_item = NULL;
widget = GTK_WIDGET (gtk_builder_get_object (builder, "filechooserbutton_directory"));
directory = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(widget));
@@ -536,6 +557,14 @@ gpk_pack_button_create_cb (GtkWidget *widget2, gpointer data)
g_error_free (error);
goto out;
}
+
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to refresh cache: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
g_object_unref (results);
}
@@ -565,6 +594,8 @@ gpk_pack_button_create_cb (GtkWidget *widget2, gpointer data)
g_object_unref (pack);
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
g_strfreev (packages);
g_strfreev (package_ids);
g_strfreev (exclude_ids);
diff --git a/src/gpk-update-viewer.c b/src/gpk-update-viewer.c
index 19c6e29..3b0280f 100644
--- a/src/gpk-update-viewer.c
+++ b/src/gpk-update-viewer.c
@@ -356,6 +356,7 @@ gpk_update_viewer_update_packages_cb (PkTask *_task, GAsyncResult *res, GMainLoo
GtkWidget *widget;
PkRestartEnum restart;
gchar *text;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_task_generic_finish (task, res, &error);
@@ -365,6 +366,13 @@ gpk_update_viewer_update_packages_cb (PkTask *_task, GAsyncResult *res, GMainLoo
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to update packages: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* TODO: failed sound */
/* play the sound, using sounds from the naming spec */
ca_context_play (ca_gtk_context_get (), 0,
@@ -444,6 +452,8 @@ gpk_update_viewer_update_packages_cb (PkTask *_task, GAsyncResult *res, GMainLoo
/* quit after we successfully updated */
g_main_loop_quit (loop);
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -1540,15 +1550,23 @@ gpk_update_viewer_get_details_cb (PkClient *client, GAsyncResult *res, GMainLoop
GtkTreeSelection *selection;
GtkTreeView *treeview;
GtkTreeIter iter;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
if (results == NULL) {
- egg_warning ("failed to get list of categories: %s", error->message);
+ egg_warning ("failed to get details: %s", error->message);
g_error_free (error);
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get details: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
treeview = GTK_TREE_VIEW (gtk_builder_get_object (builder, "treeview_updates"));
model = gtk_tree_view_get_model (treeview);
@@ -1587,6 +1605,8 @@ gpk_update_viewer_get_details_cb (PkClient *client, GAsyncResult *res, GMainLoop
/* set info */
gpk_update_viewer_reconsider_info (model);
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -1608,6 +1628,7 @@ gpk_update_viewer_get_update_detail_cb (PkClient *client, GAsyncResult *res, GMa
GtkTreeModel *model;
GtkTreeIter iter;
GtkTreePath *path;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
@@ -1617,6 +1638,13 @@ gpk_update_viewer_get_update_detail_cb (PkClient *client, GAsyncResult *res, GMa
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get update details: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* get data */
treeview = GTK_TREE_VIEW (gtk_builder_get_object (builder, "treeview_updates"));
model = gtk_tree_view_get_model (treeview);
@@ -1636,6 +1664,8 @@ gpk_update_viewer_get_update_detail_cb (PkClient *client, GAsyncResult *res, GMa
GPK_UPDATES_COLUMN_RESTART, item->restart, -1);
}
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -2066,6 +2096,7 @@ gpk_update_viewer_get_updates_cb (PkClient *client, GAsyncResult *res, GMainLoop
GtkTreeView *treeview;
GtkTreeModel *model;
GtkWidget *widget;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
@@ -2075,6 +2106,13 @@ gpk_update_viewer_get_updates_cb (PkClient *client, GAsyncResult *res, GMainLoop
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get updates: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* get data */
array = pk_results_get_package_array (results);
for (i=0; i<array->len; i++) {
@@ -2136,6 +2174,8 @@ gpk_update_viewer_get_updates_cb (PkClient *client, GAsyncResult *res, GMainLoop
gpk_update_viewer_reconsider_info (model);
out:
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
@@ -2428,6 +2468,7 @@ gpk_update_viewer_get_distro_upgrades_cb (PkClient *client, GAsyncResult *res, G
GtkWidget *widget;
GtkTreeView *treeview;
GtkTreeModel *model;
+ PkItemErrorCode *error_item = NULL;
/* get the results */
results = pk_client_generic_finish (client, res, &error);
@@ -2437,6 +2478,13 @@ gpk_update_viewer_get_distro_upgrades_cb (PkClient *client, GAsyncResult *res, G
goto out;
}
+ /* check error code */
+ error_item = pk_results_get_error_code (results);
+ if (error_item != NULL) {
+ egg_warning ("failed to get list of distro upgrades: %s, %s", pk_error_enum_to_text (error_item->code), error_item->details);
+ goto out;
+ }
+
/* get data */
array = pk_results_get_distro_upgrade_array (results);
item = gpk_update_viewer_get_distro_upgrades_best (array);
@@ -2460,6 +2508,8 @@ gpk_update_viewer_get_distro_upgrades_cb (PkClient *client, GAsyncResult *res, G
out:
g_free (text);
g_free (text_format);
+ if (error_item != NULL)
+ pk_item_error_code_unref (error_item);
if (array != NULL)
g_ptr_array_unref (array);
if (results != NULL)
diff --git a/src/gpk-watch.c b/src/gpk-watch.c
index 81921db..f9c19c2 100644
--- a/src/gpk-watch.c
+++ b/src/gpk-watch.c
@@ -1442,7 +1442,7 @@ gpk_watch_adopt_cb (PkClient *client, GAsyncResult *res, GpkWatch *watch)
guint elapsed_time;
NotifyNotification *notification;
PkProgress *progress = NULL;
- PkResults *results = NULL;
+ PkResults *results;
PkRoleEnum role;
PkItemErrorCode *error_item = NULL;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]