From 976269a47bcbfb3eb3596a5a0538761a5bd3c373 Mon Sep 17 00:00:00 2001 From: mattias Date: Fri, 11 Jul 2008 17:19:30 +0000 Subject: [PATCH] gtk2 intf: use Set8087CW in AppInit to avoid crash on ubuntu human theme git-svn-id: trunk@15753 - --- lcl/interfaces/gtk2/gtk2widgetset.inc | 5 +++-- lcl/interfaces/gtk2/gtk2wscomctrls.pp | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lcl/interfaces/gtk2/gtk2widgetset.inc b/lcl/interfaces/gtk2/gtk2widgetset.inc index e01b9da810..275f33ea9e 100644 --- a/lcl/interfaces/gtk2/gtk2widgetset.inc +++ b/lcl/interfaces/gtk2/gtk2widgetset.inc @@ -562,9 +562,10 @@ end; procedure TGtk2WidgetSet.AppInit(var ScreenInfo: TScreenInfo); begin inherited AppInit(ScreenInfo); -{$ifdef Windows} + {$if defined(cpui386) or defined(cpux86_64)} + // needed otherwise some gtk theme engines crash with division by zero Set8087CW($133F); -{$endif} + {$endif} end; function TGtk2WidgetSet.AppHandle: Thandle; diff --git a/lcl/interfaces/gtk2/gtk2wscomctrls.pp b/lcl/interfaces/gtk2/gtk2wscomctrls.pp index 84d846d5d1..f8212ada2f 100644 --- a/lcl/interfaces/gtk2/gtk2wscomctrls.pp +++ b/lcl/interfaces/gtk2/gtk2wscomctrls.pp @@ -364,7 +364,7 @@ begin if not WSCheckHandleAllocated(ATrackBar, 'SetPosition') then Exit; Range := PGtkRange(ATrackBar.Handle); - gtk_range_set_value(Range, Trunc(NewPosition)); + gtk_range_set_value(Range, NewPosition); end; { TGtk2WSProgressBar }