--- PackageKit-1.0.5/backends/zypp/pk-backend-zypp.cpp.orig 2014-12-15 16:21:39.000000000 +0100 +++ PackageKit-1.0.5/backends/zypp/pk-backend-zypp.cpp 2015-02-21 11:57:31.071358228 +0100 @@ -273,7 +273,7 @@ } virtual Action problem (zypp::Resolvable::constPtr resolvable, Error error, const std::string &description, RpmLevel level) { - pk_backend_job_error_code (_job, PK_ERROR_ENUM_PACKAGE_FAILED_TO_INSTALL, description.c_str ()); + pk_backend_job_error_code (_job, PK_ERROR_ENUM_PACKAGE_FAILED_TO_INSTALL, "%s", description.c_str ()); return ABORT; } @@ -308,7 +308,7 @@ } virtual Action problem (zypp::Resolvable::constPtr resolvable, Error error, const std::string &description) { - pk_backend_job_error_code (_job, PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE, description.c_str ()); + pk_backend_job_error_code (_job, PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE, "%s", description.c_str ()); return ABORT; } @@ -407,7 +407,7 @@ { virtual Action requestMedia (zypp::Url &url, unsigned mediaNr, const std::string &label, zypp::media::MediaChangeReport::Error error, const std::string &description, const std::vector & devices, unsigned int &dev_current) { - pk_backend_job_error_code (_job, PK_ERROR_ENUM_REPO_NOT_AVAILABLE, description.c_str ()); + pk_backend_job_error_code (_job, PK_ERROR_ENUM_REPO_NOT_AVAILABLE, "%s", description.c_str ()); // We've to abort here, because there is currently no feasible way to inform the user to insert/change media return ABORT; } @@ -597,10 +597,10 @@ initialized = TRUE; } } catch (const ZYppFactoryException &ex) { - pk_backend_job_error_code (priv->currentJob, PK_ERROR_ENUM_FAILED_INITIALIZATION, ex.asUserString().c_str() ); + pk_backend_job_error_code (priv->currentJob, PK_ERROR_ENUM_FAILED_INITIALIZATION, "%s", ex.asUserString().c_str() ); return NULL; } catch (const Exception &ex) { - pk_backend_job_error_code (priv->currentJob, PK_ERROR_ENUM_INTERNAL_ERROR, ex.asUserString().c_str() ); + pk_backend_job_error_code (priv->currentJob, PK_ERROR_ENUM_INTERNAL_ERROR, "%s", ex.asUserString().c_str() ); return NULL; } @@ -966,7 +966,7 @@ RepoManager manager; info = manager.getRepositoryInfo (alias); } catch (const repo::RepoNotFoundException &ex) { - pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, ex.asUserString().c_str() ); + pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, "%s", ex.asUserString().c_str() ); return RepoInfo (); } @@ -1411,7 +1411,7 @@ it->statusReset (); } - pk_backend_job_error_code (job, PK_ERROR_ENUM_DEP_RESOLUTION_FAILED, emsg); + pk_backend_job_error_code (job, PK_ERROR_ENUM_DEP_RESOLUTION_FAILED, "%s", emsg); g_free (emsg); goto exit; @@ -1538,11 +1538,11 @@ pk_backend_job_set_percentage(job, 100); ret = TRUE; } catch (const repo::RepoNotFoundException &ex) { - pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, ex.asUserString().c_str() ); + pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, "%s", ex.asUserString().c_str() ); } catch (const target::rpm::RpmException &ex) { - pk_backend_job_error_code (job, PK_ERROR_ENUM_PACKAGE_DOWNLOAD_FAILED, ex.asUserString().c_str () ); + pk_backend_job_error_code (job, PK_ERROR_ENUM_PACKAGE_DOWNLOAD_FAILED, "%s", ex.asUserString().c_str () ); } catch (const Exception &ex) { - pk_backend_job_error_code (job, PK_ERROR_ENUM_INTERNAL_ERROR, ex.asUserString().c_str() ); + pk_backend_job_error_code (job, PK_ERROR_ENUM_INTERNAL_ERROR, "%s", ex.asUserString().c_str() ); } exit: @@ -1601,7 +1601,7 @@ catch ( const Exception &e) { // FIXME: make sure this dumps out the right sring. - pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, e.asUserString().c_str() ); + pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, "%s", e.asUserString().c_str() ); return FALSE; } @@ -1651,7 +1651,7 @@ pk_backend_job_set_percentage (job, i >= num_of_repos ? 100 : (100 * i) / num_of_repos); } if (repo_messages != NULL) - g_printf(repo_messages); + g_printf("%s", repo_messages); pk_backend_job_set_percentage (job, 100); g_free (repo_messages); @@ -2373,7 +2373,7 @@ try { manager.removeRepository (tmpRepo); } catch (const repo::RepoNotFoundException &ex) { - pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, ex.asUserString().c_str() ); + pk_backend_job_error_code (job, PK_ERROR_ENUM_REPO_NOT_FOUND, "%s", ex.asUserString().c_str() ); } } @@ -3308,7 +3308,7 @@ } catch (const repo::RepoException &ex) { pk_backend_job_error_code (job, PK_ERROR_ENUM_INTERNAL_ERROR, "Can't access the given URL"); } catch (const Exception &ex) { - pk_backend_job_error_code (job, PK_ERROR_ENUM_INTERNAL_ERROR, ex.asString ().c_str ()); + pk_backend_job_error_code (job, PK_ERROR_ENUM_INTERNAL_ERROR, "%s", ex.asString ().c_str ()); } }