fixes a crash when KFileDialog is opened in Firefox and then cancelled (probably boo#1015998) firefox52
authorLubos Lunak <l.lunak@centrum.cz>
Wed, 26 Apr 2017 14:34:14 +0200
branchfirefox52
changeset 972 d9b28dbb04f2
parent 971 58f5b7e6c79e
child 973 28f802837a7a
fixes a crash when KFileDialog is opened in Firefox and then cancelled (probably boo#1015998)
mozilla-kde.patch
--- a/mozilla-kde.patch	Wed Apr 26 14:27:22 2017 +0200
+++ b/mozilla-kde.patch	Wed Apr 26 14:34:14 2017 +0200
@@ -1,5 +1,5 @@
 # HG changeset patch
-# Parent  5f1979729aa3c6bc50f7097202991e73be677e5e
+# Parent  aff14a54f25dc3146ba7a64408ceb9f486a832db
 Description: Add KDE integration to Firefox (toolkit parts)
 Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
 Author: Lubos Lunak <lunak@suse.com>
@@ -3347,7 +3347,7 @@
  
    mFilters.AppendElement(filter);
    mFilterNames.AppendElement(name);
-@@ -371,16 +375,32 @@ nsFilePicker::Show(int16_t *aReturn)
+@@ -371,16 +375,34 @@ nsFilePicker::Show(int16_t *aReturn)
  
  NS_IMETHODIMP
  nsFilePicker::Open(nsIFilePickerShownCallback *aCallback)
@@ -3361,6 +3361,7 @@
 +    int16_t result;
 +    mCallback = aCallback;
 +    mRunning = true;
++    NS_ADDREF_THIS();
 +    kdeFileDialog(&result);
 +    if (mCallback) {
 +      mCallback->Done(result);
@@ -3369,6 +3370,7 @@
 +      mResult = result;
 +    }
 +    mRunning = false;
++    NS_RELEASE_THIS();
 +    return NS_OK;
 +  }
 +
@@ -3380,7 +3382,7 @@
  
    GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
  
-@@ -603,8 +623,235 @@ nsFilePicker::Done(GtkWidget* file_choos
+@@ -603,8 +625,235 @@ nsFilePicker::Done(GtkWidget* file_choos
    if (mCallback) {
      mCallback->Done(result);
      mCallback = nullptr;