PKGBUILDs/extra/kdelibs/CVE-2014-3494.patch

56 lines
2.6 KiB
Diff
Raw Normal View History

2014-06-19 00:16:37 +00:00
From: David Faure <faure@kde.org>
Date: Wed, 18 Jun 2014 18:29:04 +0000
Subject: Don't require a job to handle messageboxes.
X-Git-Url: http://quickgit.kde.org/?p=kdelibs.git&a=commitdiff&h=bbae87dc1be3ae063796a582774bd5642cacdd5d
---
Don't require a job to handle messageboxes.
The POP3 ioslave doesn't have a job when it gets here.
---
--- a/kio/kio/usernotificationhandler.cpp
+++ b/kio/kio/usernotificationhandler.cpp
@@ -19,7 +19,7 @@
#include "usernotificationhandler_p.h"
#include "slave.h"
-#include "job_p.h"
+#include "jobuidelegate.h"
#include <kdebug.h>
@@ -76,19 +76,18 @@
if (m_cachedResults.contains(key)) {
result = *(m_cachedResults[key]);
- } else if (r->slave->job()) {
- SimpleJobPrivate* jobPrivate = SimpleJobPrivate::get(r->slave->job());
- if (jobPrivate) {
- result = jobPrivate->requestMessageBox(r->type,
- r->data.value(MSG_TEXT).toString(),
- r->data.value(MSG_CAPTION).toString(),
- r->data.value(MSG_YES_BUTTON_TEXT).toString(),
- r->data.value(MSG_NO_BUTTON_TEXT).toString(),
- r->data.value(MSG_YES_BUTTON_ICON).toString(),
- r->data.value(MSG_NO_BUTTON_ICON).toString(),
- r->data.value(MSG_DONT_ASK_AGAIN).toString(),
- r->data.value(MSG_META_DATA).toMap());
- }
+ } else {
+ JobUiDelegate ui;
+ const JobUiDelegate::MessageBoxType type = static_cast<JobUiDelegate::MessageBoxType>(r->type);
+ result = ui.requestMessageBox(type,
+ r->data.value(MSG_TEXT).toString(),
+ r->data.value(MSG_CAPTION).toString(),
+ r->data.value(MSG_YES_BUTTON_TEXT).toString(),
+ r->data.value(MSG_NO_BUTTON_TEXT).toString(),
+ r->data.value(MSG_YES_BUTTON_ICON).toString(),
+ r->data.value(MSG_NO_BUTTON_ICON).toString(),
+ r->data.value(MSG_DONT_ASK_AGAIN).toString(),
+ r->data.value(MSG_META_DATA).toMap());
m_cachedResults.insert(key, new int(result));
}
} else {