File bnc#881245-update-test-affects-package-manager-should-restart-gpk-update-viewer.patch of Package PackageKit.9848

Index: PackageKit-0.8.16/client/pk-console.c
===================================================================
--- PackageKit-0.8.16.orig/client/pk-console.c
+++ PackageKit-0.8.16/client/pk-console.c
@@ -893,6 +893,9 @@ pk_console_finished_cb (GObject *object,
 	if (restart == PK_RESTART_ENUM_SYSTEM) {
 		/* TRANSLATORS: a package needs to restart their system */
 		g_print ("%s\n", _("Please restart the computer to complete the update."));
+        } else if (restart == PK_RESTART_ENUM_APPLICATION) {
+                /* TRANSLATORS: a package needs to restart this application */
+                g_print ("%s\n", _("Please restart this application to complete the update."));
 	} else if (restart == PK_RESTART_ENUM_SESSION) {
 		/* TRANSLATORS: a package needs to restart the session */
 		g_print ("%s\n", _("Please logout and login to complete the update."));
Index: PackageKit-0.8.16/backends/zypp/pk-backend-zypp.cpp
===================================================================
--- PackageKit-0.8.16.orig/backends/zypp/pk-backend-zypp.cpp
+++ PackageKit-0.8.16/backends/zypp/pk-backend-zypp.cpp
@@ -1289,7 +1289,9 @@ zypp_check_restart (PkRestartEnum *resta
 	    ( patch->reloginSuggested () ||
 	      patch->restartSuggested () ||
 	      patch->rebootSuggested ()) ) {
-		if (patch->reloginSuggested () || patch->restartSuggested ())
+		if (patch->restartSuggested ())
+			*restart = PK_RESTART_ENUM_APPLICATION;
+		if (patch->reloginSuggested ())
 			*restart = PK_RESTART_ENUM_SESSION;
 		if (patch->rebootSuggested ())
 			*restart = PK_RESTART_ENUM_SYSTEM;