Merge lp:~loic.molinari/ubuntu-ui-toolkit/ubuntu-ui-toolkit-perf-monitor-dangling-window-pointer-fix into lp:ubuntu-ui-toolkit/staging

Proposed by Loïc Molinari
Status: Merged
Approved by: Zsombor Egri
Approved revision: 1858
Merged at revision: 1858
Proposed branch: lp:~loic.molinari/ubuntu-ui-toolkit/ubuntu-ui-toolkit-perf-monitor-dangling-window-pointer-fix
Merge into: lp:ubuntu-ui-toolkit/staging
Diff against target: 50 lines (+10/-1)
2 files modified
src/Ubuntu/Components/plugin/ucperformancemonitor.cpp (+9/-1)
src/Ubuntu/Components/plugin/ucperformancemonitor.h (+1/-0)
To merge this branch: bzr merge lp:~loic.molinari/ubuntu-ui-toolkit/ubuntu-ui-toolkit-perf-monitor-dangling-window-pointer-fix
Reviewer Review Type Date Requested Status
ubuntu-sdk-build-bot continuous-integration Approve
Zsombor Egri Approve
Review via email: mp+286488@code.launchpad.net

Commit message

Fixed performance monitor dangling pointer crash.

Description of the change

Fixed performance monitor dangling pointer crash.

To post a comment you must log in.
Revision history for this message
Zsombor Egri (zsombi) wrote :

Thanks, Loic, for saving us!!!!!!!!

review: Approve
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'src/Ubuntu/Components/plugin/ucperformancemonitor.cpp'
--- src/Ubuntu/Components/plugin/ucperformancemonitor.cpp 2016-01-29 07:43:58 +0000
+++ src/Ubuntu/Components/plugin/ucperformancemonitor.cpp 2016-02-18 11:38:42 +0000
@@ -39,7 +39,6 @@
3939
40UCPerformanceMonitor::~UCPerformanceMonitor()40UCPerformanceMonitor::~UCPerformanceMonitor()
41{41{
42 connectToWindow(NULL);
43}42}
4443
45QQuickWindow* UCPerformanceMonitor::findQQuickWindow()44QQuickWindow* UCPerformanceMonitor::findQQuickWindow()
@@ -75,6 +74,8 @@
75 this, &UCPerformanceMonitor::startTimer);74 this, &UCPerformanceMonitor::startTimer);
76 QObject::disconnect(m_window, &QQuickWindow::afterRendering,75 QObject::disconnect(m_window, &QQuickWindow::afterRendering,
77 this, &UCPerformanceMonitor::stopTimer);76 this, &UCPerformanceMonitor::stopTimer);
77 QObject::disconnect(m_window, &QWindow::destroyed,
78 this, &UCPerformanceMonitor::windowDestroyed);
78 }79 }
7980
80 m_window = window;81 m_window = window;
@@ -86,6 +87,8 @@
86 QObject::connect(m_window, &QQuickWindow::afterRendering,87 QObject::connect(m_window, &QQuickWindow::afterRendering,
87 this, &UCPerformanceMonitor::stopTimer,88 this, &UCPerformanceMonitor::stopTimer,
88 Qt::DirectConnection);89 Qt::DirectConnection);
90 QObject::connect(m_window, &QWindow::destroyed,
91 this, &UCPerformanceMonitor::windowDestroyed);
89 }92 }
90 }93 }
91}94}
@@ -126,3 +129,8 @@
126 connectToWindow(NULL);129 connectToWindow(NULL);
127 }130 }
128}131}
132
133void UCPerformanceMonitor::windowDestroyed()
134{
135 connectToWindow(NULL);
136}
129137
=== modified file 'src/Ubuntu/Components/plugin/ucperformancemonitor.h'
--- src/Ubuntu/Components/plugin/ucperformancemonitor.h 2016-01-19 13:01:44 +0000
+++ src/Ubuntu/Components/plugin/ucperformancemonitor.h 2016-02-18 11:38:42 +0000
@@ -38,6 +38,7 @@
38 void connectToWindow(QQuickWindow* window);38 void connectToWindow(QQuickWindow* window);
39 void startTimer();39 void startTimer();
40 void stopTimer();40 void stopTimer();
41 void windowDestroyed();
4142
42private:43private:
43 QQuickWindow* findQQuickWindow();44 QQuickWindow* findQQuickWindow();

Subscribers

People subscribed via source and target branches