From kde-panel-devel Wed Apr 24 20:42:19 2013 From: "Commit Hook" Date: Wed, 24 Apr 2013 20:42:19 +0000 To: kde-panel-devel Subject: Re: Review Request 110158: Fix crash in Plasma::Applet::configDialogFinished() in the containment ca Message-Id: <20130424204219.11055.91101 () vidsolbach ! de> X-MARC-Message: https://marc.info/?l=kde-panel-devel&m=136683616825291 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============4929930310783888888==" --===============4929930310783888888== Content-Type: multipart/alternative; boundary="===============8425411713084861246==" --===============8425411713084861246== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/110158/ ----------------------------------------------------------- (Updated April 24, 2013, 8:42 p.m.) Status ------ This change has been marked as submitted. Review request for Plasma and Aaron J. Seigo. Description ------- This patch fixes a crash tracked in KDE bug 318806. 94e1d5c (KDE/4.10) exposed a latent crash in Plasma::Applet::configDialogFinished(). configDialogFinished() checks whether the publishUi (the widget network sharing ()) has been initialized by checking whether publishUI.publishCheckbox is not null, however this is a uic-generated pointer, and uic generated classes don't zero-init their member pointers in the constructor. Plasma::Applet attempts to cope with this by initializing publishUI.publishCheckbox to 0 in showConfigurationInterface(), but this isn't run in the containment case, where things move through a signal handled by the shell instead. This patch adds a second zero-initialization of publishCheckbox in the AppletPrivate constructor to handle this case as well. I've chosen to keep the one in showConfigurationInterface() regardless to leave it context-free. I would like to apply this patch to both the KDE/4.10 and master branches. This addresses bug 318806. http://bugs.kde.org/show_bug.cgi?id=318806 Diffs ----- plasma/applet.cpp 9ed62bc Diff: http://git.reviewboard.kde.org/r/110158/diff/ Testing ------- Thanks, Eike Hein --===============8425411713084861246== Content-Type: text/html; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit
This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/110158/

This change has been marked as submitted.


Review request for Plasma and Aaron J. Seigo.
By Eike Hein.

Updated April 24, 2013, 8:42 p.m.

Description

This patch fixes a crash tracked in KDE bug 318806.

94e1d5c (KDE/4.10) exposed a latent crash in Plasma::Applet::configDialogFinished(). configDialogFinished() checks whether the publishUi (the widget network sharing ()) has been initialized by checking whether publishUI.publishCheckbox is not null, however this is a uic-generated pointer, and uic generated classes don't zero-init their member pointers in the constructor. Plasma::Applet attempts to cope with this by initializing publishUI.publishCheckbox to 0 in showConfigurationInterface(), but this isn't run in the containment case, where things move through a signal handled by the shell instead. This patch adds a second zero-initialization of publishCheckbox in the AppletPrivate constructor to handle this case as well. I've chosen to keep the one in showConfigurationInterface() regardless to leave it context-free.

I would like to apply this patch to both the KDE/4.10 and master branches.
Bugs: 318806

Diffs

  • plasma/applet.cpp (9ed62bc)

View Diff

--===============8425411713084861246==-- --===============4929930310783888888== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel --===============4929930310783888888==--