[PATCH] Change in core[libreoffice-4-0]: fix a bunch of more crashes when setting personas
Markus Mohrhard (via Code Review)
gerrit at gerrit.libreoffice.org
Fri Jan 11 21:38:51 PST 2013
Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/1659
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/59/1659/1
fix a bunch of more crashes when setting personas
Change-Id: I6c2c398e074a41c3173bff57bc12496b4c2032b4
---
M basctl/source/basicide/baside2b.cxx
M basctl/source/basicide/layout.cxx
M basctl/source/basicide/linenumberwindow.cxx
3 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/basctl/source/basicide/baside2b.cxx b/basctl/source/basicide/baside2b.cxx
index e4d7350..ffa93e4 100644
--- a/basctl/source/basicide/baside2b.cxx
+++ b/basctl/source/basicide/baside2b.cxx
@@ -666,8 +666,8 @@
&& (rDCEvt.GetFlags() & SETTINGS_STYLE) != 0)
{
Color aColor(GetSettings().GetStyleSettings().GetFieldColor());
- if (aColor
- != rDCEvt.GetOldSettings()->GetStyleSettings().GetFieldColor())
+ const AllSettings* pOldSettings = rDCEvt.GetOldSettings();
+ if (!pOldSettings || aColor != pOldSettings->GetStyleSettings().GetFieldColor())
{
SetBackground(Wallpaper(aColor));
Invalidate();
@@ -675,8 +675,8 @@
if (pEditEngine != 0)
{
aColor = GetSettings().GetStyleSettings().GetFieldTextColor();
- if (aColor != rDCEvt.GetOldSettings()->
- GetStyleSettings().GetFieldTextColor())
+ if (!pOldSettings || aColor !=
+ pOldSettings-> GetStyleSettings().GetFieldTextColor())
{
Font aFont(pEditEngine->GetFont());
aFont.SetColor(aColor);
@@ -1166,8 +1166,8 @@
&& (rDCEvt.GetFlags() & SETTINGS_STYLE) != 0)
{
Color aColor(GetSettings().GetStyleSettings().GetFieldColor());
- if (aColor
- != rDCEvt.GetOldSettings()->GetStyleSettings().GetFieldColor())
+ const AllSettings* pOldSettings = rDCEvt.GetOldSettings();
+ if (!pOldSettings || aColor != pOldSettings->GetStyleSettings().GetFieldColor())
{
setBackgroundColor(aColor);
Invalidate();
@@ -1690,8 +1690,8 @@
&& (rDCEvt.GetFlags() & SETTINGS_STYLE) != 0)
{
Color aColor(GetSettings().GetStyleSettings().GetFaceColor());
- if (aColor
- != rDCEvt.GetOldSettings()->GetStyleSettings().GetFaceColor())
+ const AllSettings* pOldSettings = rDCEvt.GetOldSettings();
+ if (!pOldSettings || aColor != pOldSettings->GetStyleSettings().GetFaceColor())
{
SetBackground(Wallpaper(aColor));
Invalidate();
diff --git a/basctl/source/basicide/layout.cxx b/basctl/source/basicide/layout.cxx
index e679a4f..344345f 100644
--- a/basctl/source/basicide/layout.cxx
+++ b/basctl/source/basicide/layout.cxx
@@ -135,13 +135,14 @@
{
bool bInvalidate = false;
Color aColor = GetSettings().GetStyleSettings().GetWindowColor();
- if (aColor != rDCEvt.GetOldSettings()->GetStyleSettings().GetWindowColor())
+ const AllSettings* pOldSettings = rDCEvt.GetOldSettings();
+ if (!pOldSettings || aColor != pOldSettings->GetStyleSettings().GetWindowColor())
{
SetBackground(Wallpaper(aColor));
bInvalidate = true;
}
aColor = GetSettings().GetStyleSettings().GetWindowTextColor();
- if (aColor != rDCEvt.GetOldSettings()->GetStyleSettings().GetWindowTextColor())
+ if (!pOldSettings || aColor != pOldSettings->GetStyleSettings().GetWindowTextColor())
{
Font aFont(GetFont());
aFont.SetColor(aColor);
diff --git a/basctl/source/basicide/linenumberwindow.cxx b/basctl/source/basicide/linenumberwindow.cxx
index 6e81075..79edc16 100644
--- a/basctl/source/basicide/linenumberwindow.cxx
+++ b/basctl/source/basicide/linenumberwindow.cxx
@@ -98,7 +98,8 @@
&& (rDCEvt.GetFlags() & SETTINGS_STYLE) != 0)
{
Color aColor(GetSettings().GetStyleSettings().GetFieldColor());
- if (aColor != rDCEvt.GetOldSettings()->GetStyleSettings().GetFieldColor())
+ const AllSettings* pOldSettings = rDCEvt.GetOldSettings();
+ if (!pOldSettings || aColor != pOldSettings->GetStyleSettings().GetFieldColor())
{
SetBackground(Wallpaper(aColor));
Invalidate();
--
To view, visit https://gerrit.libreoffice.org/1659
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6c2c398e074a41c3173bff57bc12496b4c2032b4
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: libreoffice-4-0
Gerrit-Owner: Markus Mohrhard <markus.mohrhard at googlemail.com>
More information about the LibreOffice
mailing list