Merge "Merge remote-tracking branch 'origin/5.3.1' into 5.3" into refs/staging/5.3
This commit is contained in:
commit
4b581414fa
101
dist/changes-5.3.1
vendored
Normal file
101
dist/changes-5.3.1
vendored
Normal file
@ -0,0 +1,101 @@
|
||||
Qt 5.3.1 is a bug-fix release. It maintains both forward and backward
|
||||
compatibility (source and binary) with Qt 5.3.0.
|
||||
|
||||
For more details, refer to the online documentation included in this
|
||||
distribution. The documentation is also available online:
|
||||
|
||||
http://qt-project.org/doc/qt-5.3
|
||||
|
||||
The Qt version 5.3 series is binary compatible with the 5.2.x series.
|
||||
Applications compiled for 5.2 will continue to run with 5.3.
|
||||
|
||||
Some of the changes listed in this file include issue tracking numbers
|
||||
corresponding to tasks in the Qt Bug Tracker:
|
||||
|
||||
http://bugreports.qt-project.org/
|
||||
|
||||
Each of these identifiers can be entered in the bug tracker to obtain more
|
||||
information about a particular change.
|
||||
|
||||
****************************************************************************
|
||||
* Library *
|
||||
****************************************************************************
|
||||
|
||||
QtCore
|
||||
------
|
||||
|
||||
- QAbstractProxyModel:
|
||||
* Fixed QAbstractProxyModel::sibling to work in the same manner as the
|
||||
Qt4 code used to behave. Previously, Qt5's implementation would treat
|
||||
the row and column as positions in the source model instead of a
|
||||
position in the proxy itself.
|
||||
|
||||
QtGui
|
||||
-----
|
||||
|
||||
- Text:
|
||||
* [QTBUG-36083] Respect QFont::fixedPitch() for fallbacks when font
|
||||
family cannot be matched.
|
||||
* [QTBUG-37190] Fixed crash when trying to load a font from invalid
|
||||
data.
|
||||
|
||||
QtSql
|
||||
-----
|
||||
|
||||
- QDB2 and QODBC
|
||||
* [QTBUG-39137] Fix error handling problem caused by unintialized variable
|
||||
passed to SQLNumResultCols.
|
||||
|
||||
- QPSQL
|
||||
* [QTBUG-12477] Fix PSQL column metadata.
|
||||
|
||||
- QSqlQuery
|
||||
* Fix misbehavior of seek in special query positions BeforeFirstRow and
|
||||
AfterLastRow. (commit 3e6e70bddd84536deaae69421d05785ae6ce28cd)
|
||||
* [QTBUG-33169] Fix for bindvalue(int) memory allocation problem.
|
||||
|
||||
QtWidgets
|
||||
---------
|
||||
|
||||
- QMenu:
|
||||
* [QTBUG-38498] Accessibility: Menus are now read by screen readers
|
||||
with more reliability.
|
||||
|
||||
****************************************************************************
|
||||
* Platform Specific Changes *
|
||||
****************************************************************************
|
||||
|
||||
Android
|
||||
-------
|
||||
|
||||
- [QTBUG-38960] Fixed regression where there would be flickering on
|
||||
startup and shutdown of the application.
|
||||
- [QTBUG-35975] Fixed repaint issues in drag and drop.
|
||||
|
||||
- Text:
|
||||
* [QTBUG-37844] Fall back to Droid Sans Mono for QFont::Courier style
|
||||
hint.
|
||||
|
||||
****************************************************************************
|
||||
* Tools *
|
||||
****************************************************************************
|
||||
|
||||
configure & build system
|
||||
------------------------
|
||||
|
||||
- [QTBUG-38445] Fixed build against static ICU on Unix
|
||||
- [QTBUG-38544] Fixed LLVM build with SIMD features
|
||||
- [QTBUG-39253] PDB files are now installed also for static libraries
|
||||
- Added support for -separate-debug-info on Windows
|
||||
- Added [-no]-pulseaudio and [-no]-alsa options on Unix
|
||||
- Several fixes to installed .pc and .prl files
|
||||
- Fixed MinGW build under MSYS
|
||||
- Fixed installation of unneeded static libraries in dynamic builds
|
||||
|
||||
qmake
|
||||
-----
|
||||
|
||||
- [QTBUG-37054] Fixed use of relative paths in QMAKE_BUNDLE_DATA with Xcode
|
||||
- [QTBUG-38260] Custom Info.plist supplied via QMAKE_INFO_PLIST is now used
|
||||
as-is, without placeholder replacement
|
||||
- QMAKE_TARGET_BUNDLE_PREFIX does not need a trailing dot any more
|
3
src/3rdparty/harfbuzz-ng/src/hb-coretext.cc
vendored
3
src/3rdparty/harfbuzz-ng/src/hb-coretext.cc
vendored
@ -738,7 +738,8 @@ _hb_coretext_shape (hb_shape_plan_t *shape_plan,
|
||||
if (num_glyphs == 0)
|
||||
continue;
|
||||
|
||||
buffer->ensure (buffer->len + num_glyphs + (endWithPDF ? 1 : 0));
|
||||
const long ensureCount = DIV_CEIL(sizeof(CGGlyph) + sizeof(CGPoint) + sizeof(CFIndex), sizeof(*scratch));
|
||||
buffer->ensure (buffer->len + ensureCount * (num_glyphs + (endWithPDF ? 1 : 0)));
|
||||
|
||||
scratch = buffer->get_scratch_buffer (&scratch_size);
|
||||
|
||||
|
@ -436,6 +436,7 @@ void QOpenGLFramebufferObjectPrivate::init(QOpenGLFramebufferObject *, const QSi
|
||||
samples = qBound(0, int(samples), int(maxSamples));
|
||||
#endif
|
||||
|
||||
samples = qMax(0, samples);
|
||||
requestedSamples = samples;
|
||||
size = sz;
|
||||
target = texture_target;
|
||||
|
@ -177,9 +177,13 @@ static const HB_FontClass hb_fontClass = {
|
||||
|
||||
static HB_Error hb_getSFntTable(void *font, HB_Tag tableTag, HB_Byte *buffer, HB_UInt *length)
|
||||
{
|
||||
QFontEngine *fe = (QFontEngine *)font;
|
||||
Q_ASSERT(fe->faceData.get_font_table);
|
||||
if (!fe->faceData.get_font_table(fe->faceData.user_data, tableTag, buffer, length))
|
||||
QFontEngine::FaceData *data = (QFontEngine::FaceData *)font;
|
||||
Q_ASSERT(data);
|
||||
|
||||
qt_get_font_table_func_t get_font_table = data->get_font_table;
|
||||
Q_ASSERT(get_font_table);
|
||||
|
||||
if (!get_font_table(data->user_data, tableTag, buffer, length))
|
||||
return HB_Err_Invalid_Argument;
|
||||
return HB_Err_Ok;
|
||||
}
|
||||
@ -287,8 +291,11 @@ void *QFontEngine::harfbuzzFont() const
|
||||
#endif
|
||||
if (!font_) {
|
||||
HB_Face hbFace = (HB_Face)harfbuzzFace();
|
||||
if (hbFace->font_for_init != 0)
|
||||
if (hbFace->font_for_init) {
|
||||
void *data = hbFace->font_for_init;
|
||||
q_check_ptr(qHBLoadFace(hbFace));
|
||||
free(data);
|
||||
}
|
||||
|
||||
HB_FontRec *hbFont = (HB_FontRec *) malloc(sizeof(HB_FontRec));
|
||||
Q_CHECK_PTR(hbFont);
|
||||
@ -319,7 +326,12 @@ void *QFontEngine::harfbuzzFace() const
|
||||
return hb_qt_face_get_for_engine(const_cast<QFontEngine *>(this));
|
||||
#endif
|
||||
if (!face_) {
|
||||
HB_Face hbFace = qHBNewFace(const_cast<QFontEngine *>(this), hb_getSFntTable);
|
||||
QFontEngine::FaceData *data = (QFontEngine::FaceData *)malloc(sizeof(QFontEngine::FaceData));
|
||||
Q_CHECK_PTR(data);
|
||||
data->user_data = faceData.user_data;
|
||||
data->get_font_table = faceData.get_font_table;
|
||||
|
||||
HB_Face hbFace = qHBNewFace(data, hb_getSFntTable);
|
||||
Q_CHECK_PTR(hbFace);
|
||||
hbFace->isSymbolFont = symbol;
|
||||
|
||||
@ -372,8 +384,11 @@ bool QFontEngine::supportsScript(QChar::Script script) const
|
||||
}
|
||||
#endif
|
||||
HB_Face hbFace = (HB_Face)harfbuzzFace();
|
||||
if (hbFace->font_for_init != 0)
|
||||
if (hbFace->font_for_init) {
|
||||
void *data = hbFace->font_for_init;
|
||||
q_check_ptr(qHBLoadFace(hbFace));
|
||||
free(data);
|
||||
}
|
||||
return hbFace->supported_scripts[script_to_hbscript(script)];
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user