summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-calculators/qalculate-gtk/files/qalculate-gtk-0.9.7-wformat-security.patch')
-rw-r--r--sci-calculators/qalculate-gtk/files/qalculate-gtk-0.9.7-wformat-security.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/sci-calculators/qalculate-gtk/files/qalculate-gtk-0.9.7-wformat-security.patch b/sci-calculators/qalculate-gtk/files/qalculate-gtk-0.9.7-wformat-security.patch
new file mode 100644
index 000000000000..dee57dd54503
--- /dev/null
+++ b/sci-calculators/qalculate-gtk/files/qalculate-gtk-0.9.7-wformat-security.patch
@@ -0,0 +1,48 @@
+Fix -Werror=format-security errors
+https://bugs.gentoo.org/show_bug.cgi?id=541986
+
+callbacks.cc: In function ‘void show_message(const gchar*, GtkWidget*)’:
+callbacks.cc:391:137: error: format not a string literal and no format arguments [-Werror=format-security]
+ GtkWidget *edialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, text);
+
+--- qalculate-gtk-0.9.7/src/callbacks.cc
++++ qalculate-gtk-0.9.7/src/callbacks.cc
+@@ -388,12 +388,12 @@
+ }
+
+ void show_message(const gchar *text, GtkWidget *win) {
+- GtkWidget *edialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, text);
++ GtkWidget *edialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", text);
+ gtk_dialog_run(GTK_DIALOG(edialog));
+ gtk_widget_destroy(edialog);
+ }
+ bool ask_question(const gchar *text, GtkWidget *win) {
+- GtkWidget *edialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_YES_NO, text);
++ GtkWidget *edialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_YES_NO, "%s", text);
+ int question_answer = gtk_dialog_run(GTK_DIALOG(edialog));
+ gtk_widget_destroy(edialog);
+ return question_answer == GTK_RESPONSE_YES;
+@@ -654,6 +654,7 @@
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
++ "%s",
+ CALCULATOR->message()->message().c_str());
+ gtk_dialog_run(GTK_DIALOG(edialog));
+ gtk_widget_destroy(edialog);
+@@ -667,6 +668,7 @@
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_ERROR,
+ GTK_BUTTONS_CLOSE,
++ "%s",
+ str.c_str());
+ } else {
+ edialog = gtk_message_dialog_new(
+@@ -674,6 +676,7 @@
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_WARNING,
+ GTK_BUTTONS_CLOSE,
++ "%s",
+ str.c_str());
+ }
+