[Pkg-octave-commit] [SCM] Debian packaging for qtoctave branch, master, updated. 73e9377560af1f88bc4b9a1d8f0510d73e593497
Sébastien Villemot
sebastien.villemot at ens.fr
Sun Mar 11 16:38:07 UTC 2012
The following commit has been merged in the master branch:
commit ee17b6abcf76f5d7f37979ce7311f5b728830a05
Author: Sébastien Villemot <sebastien.villemot at ens.fr>
Date: Sun Mar 11 17:01:44 2012 +0100
debian/patches/initial_position: new patch imported from Fedora
diff --git a/debian/patches/initial_position b/debian/patches/initial_position
new file mode 100644
index 0000000..cd97291
--- /dev/null
+++ b/debian/patches/initial_position
@@ -0,0 +1,61 @@
+Description: Fix crash when closing a dock tool within the first 5 seconds
+ (a NULL pointer dereference caused by a race condition between the user
+ closing the tool and the timer setting the initial positions, prevented by
+ using a QWeakPointer instead of a raw QWidget *)
+Author: Kevin Kofler <kevin.kofler at chello.at>
+Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=722986
+Forwarded: no
+Last-Update: 2011-10-06
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+diff -ur qtoctave-0.10.1/qtoctave/src/main.cpp qtoctave-0.10.1-initialposition/qtoctave/src/main.cpp
+--- qtoctave-0.10.1/qtoctave/src/main.cpp 2011-01-06 22:48:07.000000000 +0100
++++ qtoctave-0.10.1-initialposition/qtoctave/src/main.cpp 2011-10-06 20:17:03.000000000 +0200
+@@ -595,7 +595,7 @@
+ initPos.maximized=maximized;
+ initPos.minimized=minimized;
+ initPos.widget=bw->parentWidget();
+- if(initPos.widget!=NULL)
++ if(!initPos.widget.isNull())
+ initialPositionList.append(initPos);
+ //bw->show();
+ //bw->move(x,y);
+@@ -694,10 +694,14 @@
+ {
+ foreach(InitialPosition i, initialPositionList)
+ {
+- i.widget->move(i.x,i.y);
+- i.widget->resize(i.width, i.height);
+- if(i.maximized) i.widget->showMaximized();
+- if(i.minimized) i.widget->showMinimized();
++ QWidget *widget = i.widget.data();
++ if (widget)
++ {
++ widget->move(i.x,i.y);
++ widget->resize(i.width, i.height);
++ if(i.maximized) widget->showMaximized();
++ if(i.minimized) widget->showMinimized();
++ }
+ }
+ }
+
+diff -ur qtoctave-0.10.1/qtoctave/src/main.h qtoctave-0.10.1-initialposition/qtoctave/src/main.h
+--- qtoctave-0.10.1/qtoctave/src/main.h 2011-01-06 22:48:08.000000000 +0100
++++ qtoctave-0.10.1-initialposition/qtoctave/src/main.h 2011-10-06 20:12:55.000000000 +0200
+@@ -27,6 +27,7 @@
+ #include <QListWidget>
+ #include <QTimer>
+ #include <QVector>
++#include <QWeakPointer>
+ #include "mainwindow.h"
+ #include "octave_connection.h"
+ #include "terminal.h"
+@@ -41,7 +42,7 @@
+ struct InitialPosition
+ {
+ int x, y, width, height;
+- QWidget *widget;
++ QWeakPointer<QWidget> widget;
+ bool maximized, minimized;
+ };
+
diff --git a/debian/patches/series b/debian/patches/series
index 0d66a98..7f16e4e 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@ build-out-of-source
build-widgetserver
filedialog-filters
qtinfo-octave3.4
+initial_position
--
Debian packaging for qtoctave
More information about the Pkg-octave-commit
mailing list