diff options
author | nyamatongwe <unknown> | 2000-03-08 13:56:46 +0000 |
---|---|---|
committer | nyamatongwe <unknown> | 2000-03-08 13:56:46 +0000 |
commit | fdadfbf88b6ef8abfc4ee6d0d07fa76cd6f79cf1 (patch) | |
tree | 5cb35872b66ae9f021ecf762de4b03e416e2d2fe /src/Style.cxx | |
parent | 9367896cf64d36c501f545690f68faf544f6c09d (diff) | |
download | scintilla-mirror-fdadfbf88b6ef8abfc4ee6d0d07fa76cd6f79cf1.tar.gz |
Made work on GTK+/Linux.
Diffstat (limited to 'src/Style.cxx')
-rw-r--r-- | src/Style.cxx | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/Style.cxx b/src/Style.cxx index 271d98fc2..120fd6e95 100644 --- a/src/Style.cxx +++ b/src/Style.cxx @@ -10,6 +10,7 @@ #include "Style.h" Style::Style() { + aliasOfDefaultFont = false; Clear(Colour(0,0,0), Colour(0xff,0xff,0xff), Platform::DefaultFontSize(), 0, false, false, false); @@ -18,11 +19,14 @@ Style::Style() { Style::~Style() { if (!aliasOfDefaultFont) font.Release(); + aliasOfDefaultFont = false; } Style &Style::operator=(const Style &source) { if (this == &source) return *this; + // Crash: + *(char *)0 = 1; Clear(Colour(0,0,0), Colour(0xff,0xff,0xff), Platform::DefaultFontSize(), 0, false, false, false); @@ -47,6 +51,8 @@ void Style::Clear(Colour fore_, Colour back_, int size_, const char *fontName_, eolFilled = eolFilled_; if (!aliasOfDefaultFont) font.Release(); + else + font.SetID(0); aliasOfDefaultFont = false; } @@ -68,7 +74,8 @@ void Style::Realise(Surface &surface, int zoomLevel, Style *defaultStyle) { int sizeZoomed = size + zoomLevel; if (sizeZoomed <= 2) // Hangs if sizeZoomed <= 1 sizeZoomed = 2; - + + font.Release(); int deviceHeight = (sizeZoomed * surface.LogPixelsY()) / 72; aliasOfDefaultFont = defaultStyle && EquivalentFontTo(defaultStyle); if (aliasOfDefaultFont) { |