1Qt 3.3.8 is a bug-fix release. It maintains both forward and backward
2compatibility (source and binary) with Qt 3.3.7, Qt 3.3.6, Qt 3.3.5, 3.3.4, Qt 3.3.3,
3Qt 3.3.2, Qt 3.3.1 and Qt 3.3.0.
4
5****************************************************************************
6*                           General                                        *
7****************************************************************************
8
9Platforms
10---------
11
12- Oracle driver now builds on HP-UX
13
14Compilers
15---------
16
17Linguist
18--------
19
20- Fixed a bug where the translation area was not changed when the context was changed.
21
22Assistant
23---------
24
25- Fixed command line parsing when specifying the docPath option.
26
27Translations
28------------
29
30- Added support for Catalan.
31
32Third party components
33----------------------
34
35- libpng
36
37  * Security fix (CVE-2006-3334): Buffer overflow allows context-dependent
38    attackers to cause a denial of service and possibly execute arbitrary
39    code via unspecified vectors related to chunk error processing.
40
41  * Security fix (CVE-2006-5793): The sPLT chunk handling code
42    uses a sizeof operator on the wrong data type, which allows
43    context-dependent attackers to cause a denial of service (crash)
44    via malformed sPLT chunks that trigger an out-of-bounds read.
45
46  * Security fix: Avoid profile larger than iCCP chunk.
47    One might crash a decoder by putting a larger profile inside the
48    iCCP profile than is actually expected.
49
50  * Security fix: NULL pointer dereference.
51
52  * Disabled MMX assembler code for Intel-Mac platforms to work
53    around a compiler bug.
54
55  * Disabled MMX assembler code for x86_64 platforms.
56
57- freetype
58
59  * Security fix (CVE-2006-0747): Integer underflow allows remote
60    attackers to cause a denial of service (crash) via a font file
61    with an odd number of blue values, which causes the underflow
62    when decrementing by 2 in a context that assumes an even number
63    of values.
64
65  * Security fix (CVE-2006-1861): Multiple integer overflows allow
66    remote attackers to cause a denial of service (crash) and possibly
67    execute arbitrary code.
68
69  * Security fix (CVE-2006-2661): A null dereference flaw allows
70    remote attackers to cause a denial of service (crash) via a
71    specially crafted font file.
72
73  * Fixed memory leak.
74
75
76****************************************************************************
77*                          Library                                         *
78****************************************************************************
79
80General Fixes
81-------------
82
83- QAccessible
84        Fixed a potential crash when a key object is destroyed.
85
86- QApplication
87        argc() no longer returns 1 if 0 was passed as argc to the constructor.
88
89- QDateTime
90        Made QDateTime::fromString(QString(), Qt::TextDate) work with locales
91        that have two-digit day names (e.g. Di 16. Jan).
92
93- QDns
94        Stability fixes for networks with missing DNS settings.
95
96- QFileDialog
97        Ensured that files are not accidentally replaced or lost during drag
98        and drop operations.
99
100- QFtp
101        Fixed a crash when uploading data from a closed QIODevice.
102        Fixed a potential crash when a FTP session gets deleted in a slot.
103
104- QGLWidget
105        renderText() no longer tries to convert the text passed in to
106        a local 8 bit encoding (via local8Bit()). latin1() is used instead.
107
108- QGridLayout
109        Fixed incorrect minimum size with rich text labels in grid layouts.
110
111- QHttp
112        Fixed an overflow that could occur when chunked downloading caused
113        erroneous allocations.
114
115- QListBox
116        Fixed a potential crash that could occur if a list box is deleted in
117        a slot connected to the returnPressed() signal.
118
119- QListView
120        Set internal startDragItem pointer to 0 in clear(). This can prevent
121        crashes during drag and drop operations.
122        Fixed a documentation error in setSelectable.
123        Fixed regression in activation of leaf-nodes of type QCheckBoxController.
124
125- QTable
126        Fixed a memory leak when F2 is pressed in an empty table.
127        Ensured that the focus rectangle is painted correctly.
128        Ensured that editors in cells spanning multiple rows or columns are
129        closed correctly.
130
131- QTextEdit
132        setDocument() no longer crashes when 0 is passed as an argument.
133        Fixed rendering of HTML tables with a fixed pixel width.
134        Fixed a potential crash when using undo/redo functionality.
135        Fixed a regression when searching for space using QTextEdit::find().
136
137- SQL plugins
138        Ensured that mysql_server_end() is only called once in the MySQL plugin.
139        Fixed fetching of strings larger than 255 characters from a
140        Sybase server through ODBC.
141        Ensured that milliseconds are not stripped from ODBC time values.
142
143- QWidget
144        Fixed an issue where adjustSize() would incorrectly take the size of
145        top-level widgets into account.
146
147
148Platform-Specific Issues
149------------------------
150
151Windows:
152
153- QAxServer
154        Fixed a regression in how the server registers type libraries.
155
156- Visual Studio 2005
157        Fixed compilation issue with the x64 compiler.
158        Fixed the behavior of qmake when executed with "qmake -tp vc".
159
160- QFont
161        Fixed crash that would occur when creating a font from an invalid string.
162        Fixed metric problems.
163
164- Fixed possible infinite loop when drawing text.
165
166- Fixed an issue where flags specified by QMAKE_LFLAGS_RELEASE would not be
167  included in generated Visual Studio project files.
168
169- Fixed issue that caused wizards to use the wrong class in the QMsDev plugin
170
171- Fixed an unexpected remote close in QSocket for Windows servers with a high
172  load.
173
174- Fixed crash in QFileDialog.
175
176- Fixed a regression in QWindowsXPStyle where tab widget backgrounds were
177  incorrectly propagated into child scroll views.
178
179- Fixed issues related to using SJIS TextCodec with QSettings.
180
181- Fixed issue where a fixed size widget could change size after changing screen
182  resolution.
183
184- Fixed support for the Khmer writing system.
185
186
187Mac OS X:
188
189- Made the endian preprocessor define dependent on the architecture. This means
190  that it is possible to build a universal Qt library on one machine. However,
191  qmake_image_collection.cpp is still dependent upon the machine it was
192  generated on.
193
194- QComboBox
195        Fixed an issue where the popup would stay open after the window had
196        been minimized.
197
198- QFont
199        Fixed support for QFont::setStretch().
200
201- QMacStyle
202        Fixed centering of items in large comboboxes.
203        Fixed editable comboboxes so that they don't truncate text.
204        Added support for Panther-style tabs for tabs on the bottom of a tab
205        widget.
206
207- QPrinter
208        Fixed Intel endian bug in printing of pixmaps with a mask/alpha
209        channel.
210        Fixed regression where active tool windows would always be disabled
211
212- QGLContext
213        Fixed a tearing issue caused by incorrect vertical sync.
214
215- Fixed a rendering issue with transparent cursors on Intel macs.
216
217- Fixed a rendering issue with icons in the dock on Intel macs.
218
219- Fixed a crash when playing back a file that does not exist.
220
221- Fixed a regression where full keyboard access was not being honored.
222
223- Fixed a regression preventing static file dialogs from being opened in a
224  contextMenuEvent() handler.
225
226- Fixed a regression in navigating nested popup menus.
227
228
229X11:
230
231- Fixed rendering of Japanese text with XLFD fonts.
232
233- Fixed rendering of text with stacking diacritics.
234
235- Rendering fixes for Indic scripts.
236
237- Fixed problem with applications hanging while querying the clipboard. This is
238  related to the KDE bug reported at http://bugs.kde.org/show_bug.cgi?id=80072.
239
240- Fixed a crash that could occur when Qt uses a DirectColor visual.
241
242- Fixed a rare crash in QPixmap::convertToImage() when XGetImage() fails.
243
244- Fixed issue where events were not being processed by Qt when using the Qt
245  Motif Extension.
246
247- The X input method language status window is no longer shown for popup menus
248  on Solaris.
249
250- Fixed incorrect use of colors when painting on the default (TrueColor) screen
251  when running a Qt application on a multi-screen display where the default
252  screen uses a TrueColor visual and the secondary screen a PseudoColor visual.
253
254- Fixed a bug where calling newPage() directly before destroying the QPrinter
255  caused the last page to be printed twice.
256
257- Fixed a bug on older Unix systems where incorrect font sizes could get used
258  when printing in HighResolution mode.
259
260- Fixed a crash when trying to load huge font files.
261
262- Ensured that fonts containing a '-' in the family name are correctly loaded.
263
264- Ensured that the QFont::NoAntialias flag is always honored.
265
266- Fixed incorrect shaping of some character combinations when writing Bengali.
267
268- Introduced workaround for some Arabic fonts with broken OpenType tables.
269
270- Fixed a bug where the wrong braces would get used when using the Hebrew Culmus
271  fonts.
272
273- Fixed crash in qtconfig when removing or shifting font substitution families.
274