Commit Graph

655 Commits

Author SHA1 Message Date
Jiang Jiang
23bf50432b Switch to use floating point pixelSize in QRawFont completely
Reviewed-by: Eskil
(cherry picked from commit 500f8a4368be85a0ae8b7c46012deb0ab0c844ad)

Change-Id: I6cfebcbb68697c9bf7a5634e98a09a26928467d7
Reviewed-on: http://codereview.qt.nokia.com/2386
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-29 12:49:12 +02:00
Olivier Goffart
ddf444d31a Simplify the mutexpool used in QObject.
Since we now have QBasicMutex as a POD, we can simplify the mutexpool.
This remove the call the the Q_GLOBAL_STATIC and some others tests that
are taking CPU cycles when activating a signal.

The QMutexPool class itself can't be simplified because its mutex are
recursive mutexes, and the size is dynamic. also it is harder to get all
the mutexes initialized to 0.

Change-Id: Ie781655635907d2ad620eb189099cba14638414f
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2171
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-29 10:32:16 +02:00
Olivier Goffart
86a237929e QMutex is now just a pointer
And added a POD QBasicMutex. (QBasicMutex* can safely be
static_cast'ed to QMutex*)

The d pointer is not anymore always a QMutexPrivate.

If d == 0x0: the mutex is unlocked
If d == 0x1: the mutex is locked, uncontended

On linux:
if d == 0x3: the mutex is locked contended, waiting on a futex
If d is a pointer, it is a recursive mutex.

On non-linux platforms:
When a thread tries to lock a mutex for which d == 0x1, it will try to
assing it a QMutexPrivated (allocated from a freelist) in order to wait
for it.

Change-Id: Ie1431cd9402a576fdd9a693cfd747166eebf5622
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2116
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-29 10:32:07 +02:00
Jiang Jiang
487583459e Fix off-by-one error in binary search
This one-line change makes the binary search in QTextEngine::findItem
behave consistently with the linear search that it replaced in commit
acf678e57ed088f3e56a551cac6c7c3322005750. The new behavior seems to
cause crashes in kword (and perhaps other applications) by triggering a
logClusters assert, although I have been unable to create a unit test
that reproduces this.

Task-number: QTBUG-17209
Done-by: Dr. Robert Marmorstein <robert@narnia.homeunix.com>
Change-Id: I68b79f024e9836e1cc8b0f3514889120541eb2ea
Reviewed-on: http://codereview.qt.nokia.com/2343
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-29 08:12:12 +02:00
Aaron Kennedy
78cf553469 Flag meta objects generated by QtDBus
QtDBus requires a QVariant argument to be passed to property reads and
writes.  For performance reasons QtDeclarative does not do this.  By
flagging the meta object as requiring this, QtDeclarative can do so only
required.

Task-number: QTBUG-15052

Change-Id: I032c946f079523f5f10217ed56642fb315265d9f
Reviewed-on: http://codereview.qt.nokia.com/2365
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
2011-07-29 05:19:47 +02:00
Charles Yin
a2c0390468 Add notify signals for QIntvalidator, QDoubleValidator, QRegExpValidator
Task-number:QTBUG-19956
Change-Id: I5ab5e4494189ece5b0eb1f63e73e49cb2c4e9656
Reviewed-by:Michael Brasser
Reviewed-on: http://codereview.qt.nokia.com/2147
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
2011-07-29 02:21:16 +02:00
Andy Shaw
ade2ef0a3e Make it possible to update a related table after an external update
When a table that is related to in a QSqlRelationalTableModel gets
updated in some way (e.g. a new row, or the data is changed) then the
related model could not be updated without recreating the
QSqlRelationalTableModel.

Now, to get around this, select() can be called on the related model to
get it to be updated.

Task-number: QTBUG-7885
Reviewed-by: Charles Yin
Reviewed-by: Michael Goddard

Change-Id: Ic589e840234f3a809bcb112a807a87afe0bc25ca
(cherry picked from commit 2c60a4f67f9fb02f3b711fe749b2f293a07b4e02)
Reviewed-on: http://codereview.qt.nokia.com/2224
Reviewed-by: Charles Yin <charles.yin@nokia.com>
2011-07-29 02:21:08 +02:00
Denis Dzyubenko
85f05924f4 Added meta type info for Q[Explicitly]SharedDataPointer
Change-Id: I1269630ae5154f7318e1c7ae9fa2014a15234bf4
Reviewed-on: http://codereview.qt.nokia.com/2110
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-28 13:16:50 +02:00
Olivier Goffart
404126d578 Get rid of compiler warnings with MSVC
Change-Id: Ibd027c502a5b8bcbfc6dae71c4f244f1080d4064
Reviewed-on: http://codereview.qt.nokia.com/2303
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-07-28 13:16:50 +02:00
Andrew den Exter
4f59b5b530 Emit selectionChanged signals when input method alters selection.
Mark the selection as dirty if an input method event contains a
selection and emit selectionChanged() if it's not emitted by
finishChange().

Task-number: QTBUG-19731

Change-Id: Ief6f06f40071f64dae4db0ba365676c059a39c7e
Reviewed-on: http://codereview.qt.nokia.com/2081
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-28 11:02:16 +02:00
Jason McDonald
d692b8663c Fix obsolete contact email
Replace the old Trolltech contact email address with the current Qt
contact email address.

Task-number: QTBUG-20370
Change-Id: If5b9c3a044e1ee46264548eea456c704ced8e363
Reviewed-on: http://codereview.qt.nokia.com/2153
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-07-28 10:03:45 +02:00
Bradley T. Hughes
33a55c5661 Use QFreeList for timer id allocation
The timer id allocator doesn't need a paylod (hence T=void), but we want
to tune the allocation 'strategy.' We allocate a maximum of 6 blocks
(like before), but the first block is twice as large as before and is
not static writable anymore. The initial value is 1 (0 is not a valid
timer id), but otherwise the constants are the same as the defaults.

Change-Id: Ied49ff4d7a6a8d69bc8c7bfa5475e4111446659f
Reviewed-on: http://codereview.qt.nokia.com/2161
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-26 13:40:07 +02:00
Bradley T. Hughes
6b82798ee7 Add QFreeList as an internal class
This is a generic implementation of the lock-free free list found in
qabstracteventdispatcher.cpp. Use next() to get the next free entry in
the list, and release(id) when done with the id.

This version is templated and allows having a payload which can be
accessed using the id returned by next(). The payload is allocated and
deallocated automatically by the free list, but *NOT* when calling
next()/release(). Initialization should be done by code needing it after
next() returns. Likewise, cleanup should happen before calling
release(). It is possible to have use 'void' as the payload type, in
which case the free list only contains indexes to the next free entry.

Autotest included.

Change-Id: Ifd12a961d47f3d76593c45061f72e55c9b80a43b
Reviewed-on: http://codereview.qt.nokia.com/2160
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-26 13:40:07 +02:00
David Faure
b7064513e2 Make QTabWidget::tabBar() public.
This is very much useful to be able to write things like
myTabWidget->tabBar()->setSelectionBehaviorOnRemove( QTabBar::SelectPreviousTab );
without subclassing QTabWidget.

Change-Id: Ic7c42709ea1086631d37f90f184b058c4b6e9601
Merge-request: 3
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2172
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-26 11:41:11 +02:00
Rohan McGovern
c0589cde3d Windows: fixed qtmain.lib not going to `lib' directory
`load(qt_module_config)' clobbers DESTDIR.
Rearrange the order so that our setting of DESTDIR works as intended.

Change-Id: Id6f02e9fb55069fae9b2a75c9d0f51578b84f4d1
Reviewed-on: http://codereview.qt.nokia.com/2130
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-07-26 03:27:34 +02:00
Sarah Smith
750147f5c9 Improve doc to avoid row vs col major confusion.
There has been a few reports of user confusion from the fact that the
constData and data functions return results in column-major format.
There is nothing in the doc anywhere that states this, and nothing
states that the class is especially for OpenGL which would give a clue
at least.

Change-Id: I3a9afde0fbeb8b9d2bcba6a387620b60a56774b9
Reviewed-on: http://codereview.qt.nokia.com/2066
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Julian de Bhal <julian.debhal@nokia.com>
2011-07-26 03:27:34 +02:00
Andrew den Exter
ac22379a75 Emit selectionChanged signals when input method alters the selection.
Check if the input method removes the selection and force emit
selectionChanged if it sets a new selection.

Task-number: QTBUG-19727
Reviewed-by: Martin Jones

Change-Id: Ic8ea1044d0917aac4e52368f431ac9e5c7db7c56
Reviewed-on: http://codereview.qt.nokia.com/2076
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-26 01:35:59 +02:00
Andrew den Exter
ef2384ad57 Update cursor position when selection is reversed.
A reversed selection will have the same resolved start and end
positions but a different cursor position so testing the end points
alone doesn't guarantee the selection is the same.

Task-number: QTBUG-19456
Reviewed-by: Martin Jones

Change-Id: I516e5a501ec878d673f21e54d688fd2d21b624ef
Reviewed-on: http://codereview.qt.nokia.com/2080
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-26 01:35:40 +02:00
Olivier Goffart
cec00a2dda Add the missing function in bootstrap
(required for the metatype changes)

Change-Id: I0e3c73e7828493b4f03ec6439ec80b1c8c2bf377
Reviewed-on: http://codereview.qt.nokia.com/2105
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
2011-07-25 16:53:57 +02:00
Sergio Ahumada
ffa8882ad6 testlib: fix include of `qttestversion.h' in testlib.pro
The actual file defined in `sync.profile' and generated
by 'syncqt' is `qttestversion.h' instead of `qttestlibversion.h'

Change-Id: I90ed2d5b7cd9f98855a878c97afceced01e7e8b0
Reviewed-on: http://codereview.qt.nokia.com/2050
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2011-07-25 16:53:57 +02:00
Ilya Konkov
3ef653f681 Add initial support for bitmap version 4/5 headers.
The headers are just skipped, information stored in them is ignored.

Merge-request: 824

Change-Id: I48f37757114ed83cd5c92cb3d5a43eeaca4b91b3
Reviewed-on: http://codereview.qt.nokia.com/2108
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
2011-07-25 15:01:39 +02:00
Kim Motoyoshi Kalland
b949b17c3c Changed QLibrary::resolve() to return a function pointer.
According to the C++ standard, there is no guarantee that
you can cast between function pointers and void pointers
without data loss (section 5.2.10-6).

Change-Id: I27f4d835e4c8ca8ecca0d76cfea9ce34491956bd
Reviewed-on: http://codereview.qt.nokia.com/1995
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-07-25 12:58:23 +02:00
Jiang Jiang
8d762c9cae Making cached glyphs drawing check clearer
Putting the logic inside supportsTransformation() is a bit confusing and
that name is misleading.

Also move the same check in GL2 paint engine to the same place.

Change-Id: I182500a0ff375122e6be966b7ce2495c84d113d0
Reviewed-on: http://codereview.qt.nokia.com/2096
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-25 11:50:16 +02:00
Andrew den Exter
a150880ae6 Delay masking the last character in Password echo mode.
If QT_GUI_PASSWORD_ECHO_DELAY is defined in qplatformdefs.h with an
integer value in milliseconds, QLineEdit and TextInput will display
the last character entered unmasked for that delay period and then
mask the character as normal.  If QT_GUI_PASSWORD_ECHO_DELAY is
not defined then the behaviour is unchanged.

Task-number: QTBUG-17003
Reviewed-by: Martin Jones
(cherry picked from commit f9e7aee2019d321edd655bfde7de43f20a106971)

Conflicts:

	src/declarative/graphicsitems/qdeclarativetextinput.cpp
	tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp

Change-Id: I3683223189b7176e4ef5081ee315c95a0efb9cfe
Reviewed-on: http://codereview.qt.nokia.com/2060
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-25 05:31:46 +02:00
liangqi
be76c09981 Use QUuid::toByteArray() instead of QUuid::toString().toAscii()
This is a cheaper way.

Change-Id: Ibfc67e0ac46a77e95b2ef32cd6f28c7409c42d63
Reviewed-on: http://codereview.qt.nokia.com/2037
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-07-22 14:59:08 +02:00
Olivier Goffart
7fc3203062 QAbstractConcatenable::convertFromAscii: make len the actual length
Before, it was the length + 1, to include the ending \0 (for historical
reasons)
Having it the actual length is more intuitive and less error prone

Also added QT_ASCII_CAST_WARN to QConcatenable<QByteArray>::appendTo
to show the warnig that convertion from ascii to qstring occurs.

Change-Id: Ie7c8552b6b4e7ccb393cb09f5f0ca9b00336c714
Reviewed-by: thiago
Reviewed-on: http://codereview.qt.nokia.com/1988
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-22 13:10:42 +02:00
Ritt Konstantin
769f522342 remove Qt3 leftovers
Merge-request: 22
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>

Change-Id: I5d25fb05894d9baa645f97946e1f9aaa1622c876
Reviewed-on: http://codereview.qt.nokia.com/1925
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-22 10:55:02 +02:00
Martin Jones
345a8a67f0 Optimize QMetaObject::property().
Avoid using QByteArray.

Change-Id: I7216bc88efdd6e4e57d84b8c45e7c38119dc7092
Reviewed-on: http://codereview.qt.nokia.com/2000
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-07-22 06:06:45 +02:00
Thiago Macieira
a6d87b5114 Add unit tests to QStringLiteral and QByteArrayLiteral with operator %
This requires a fix for QByteArrayLiteral to work too.

Change-Id: I3c2a50ad431d5b0c014a341e675fa54e7b206e70
Merge-request: 27
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1967
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 22:36:39 +02:00
Thiago Macieira
038d7c6c3b Fix the timeout calculation again.
The commit 412ef92162 introduced a fix, but the
fix was incomplete. Fix it for good.

Change-Id: I3e7fbdb294f8e960fbbf2e830790750240ed813a
Merge-request: 30
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1991
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 22:36:39 +02:00
Pierre Rossi
f74296ef7c Add support for rawFonts loaded from data in FaceId
The problem was that with an empty filename and index of 0, all raw fonts
loaded from data had the same FaceId, and we wouldn't bother to load
another one after doing this once.
This commit introduces a uuid in FaceId to help distinguish them in
that case.

Change-Id: I93655ff07a7d8856af1f854024e207c519f8ed1a
Reviewed-on: http://codereview.qt.nokia.com/1882
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-21 20:40:51 +02:00
Thiago Macieira
001bd63e81 Make the N parameter to the QXXXLiterals be the actual string length
Before, it was the length + 1, to include the ending NUL or
U+0000. This avoids mistakes of -1 in QStringBuilder and will allow us
simpler code in the User-Defined Literal (future improvement)

Change-Id: I75c47d6c44579124888f925e240817229347dc70
Merge-request: 31
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1966
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 18:56:02 +02:00
Kim Motoyoshi Kalland
16c17f5965 Fixed memory leak in the TIF handler.
Change-Id: Iaa3093b172ddbac6597169ee4217a7f6c7867e60
Reviewed-on: http://codereview.qt.nokia.com/1952
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-21 16:30:41 +02:00
Ritt Konstantin
56defa4725 minor improvements to QChar documentation
Merge-request: 22
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>

Change-Id: Ib70922f98385888c084ccd3224a9bb12ca766ccf
Reviewed-on: http://codereview.qt.nokia.com/1926
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-21 10:53:26 +02:00
Olivier Goffart
6a818cffe2 Fix more use of C style cast.
Commit 77ed8787ac was not enough

Fix the test tst_Moc::oldStyleCasts()

Change-Id: Ia2f98f4e02ba512c3f7fd7cd09b692a1aabd8de0
Reviewed-on: http://codereview.qt.nokia.com/1927
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-07-21 10:53:26 +02:00
Samuel Rødal
41f9e765f5 Fixed clipping errors for non-extended paint engines.
Partially revert change a33ef62469fd71bec for the non-extended paint
engine path.

Task-number: QTBUG-19525
Reviewed-by: Andy Shaw
(cherry picked from commit f370dd07560c449ba17d13475721f7d3b46e6b24)

Change-Id: I19eaaa265a54b2df65a8ec73e36fbdf58b1a4334
Reviewed-on: http://codereview.qt.nokia.com/1211
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-21 10:53:26 +02:00
David Boddie
ff63d0f28c Doc: Removed documentation for deleted code.
Change-Id: Icdbc05decac3dfe3fc18ce073c494e1fce4ea347
Reviewed-on: http://codereview.qt.nokia.com/1824
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: David Boddie
2011-07-21 08:54:07 +02:00
Thiago Macieira
6d3c064302 Get rid of the evilness of Q_GLOBAL_STATIC_WITH_INITIALIZER
That macro is a nightmare. It leads to writing code that is
thread-unsafe or other problems. So rewrite the code that used this
macro to use special-purpose classes with constructors.

This commit does not introduce new errors. The FIXME in qicon.cpp
(qtIconCache()) was a condition already present. It does fix the race
conditions that were present in qbrush.cpp nullBrushInstance() and
qfontengine.cpp qt_grayPalette().

Specialising QGlobalStatic is also evil.

Change-Id: I039311f6a5ac9ea4ad7b310b870a2adf888da7e5
Merge-request: 10
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1895
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 08:54:00 +02:00
Charles Yin
de587d736a Forward port qt modifications for sqlite3.c
Forward port from:
 1. c42bc88a9f366899747945a4478492cf765c7166
 2. 0d61cf15358e1ff0b5125542ed4a9c4b7e96c141

Task-number: QTBUG-16607
Reviewed-by: Michael Goddard
(cherry picked from commit 2156f7057df5c748b51a7fd16a044f39c60b872c)

Change-Id: I21a4490c212e8e02ff3fc336b150d2e8bcf02c2b
Reviewed-on: http://codereview.qt.nokia.com/1808
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 03:54:07 +02:00
Charles Yin
968b54ff89 Forward port the vxworks changes
forward port from d7b688870aead912690188b324d370b920a7a600

Task-number: QTBUG-16607
Reviewed-by: Michael Goddard
(cherry picked from commit c89c7ebd2600f916eab937cb4853707ab066bc25)

Change-Id: I5130fcaaeb162b38c015f8649e83cbf820fb8a44
Reviewed-on: http://codereview.qt.nokia.com/1807
Reviewed-by: Charles Yin <charles.yin@nokia.com>
2011-07-21 03:53:53 +02:00
Charles Yin
ce3aaf38aa Update sqlite to 3.7.7.1
Updated sqlite3.h, sqlite3.c and shell.c from sqlite.org
SHA1 for sqlite3.c: d47594b8a02f6cf58e91fb673e96cb1b397aace0

Task-number: QTBUG-16607
Reviewed-by: Michael Goddard
(cherry picked from commit 0cb9b95beb9949ec31c5c67fd360c4b463472efe)

Change-Id: I56c5ce8db178ab850992812d6f8ff7e74eb9b7dc
Reviewed-on: http://codereview.qt.nokia.com/1806
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 03:53:46 +02:00
Pierre Rossi
b255344373 Add a way to check if we have a matching family in the database.
This is needed in order to get proper font fallback, and incidentally
webfonts, working in QtWebKit.
See: https://bugs.webkit.org/show_bug.cgi?id=55036
Internal for now, maybe it could be made public for a future release.

Task-number: QTBUG-15575
Change-Id: I5c454689125cd9d5fda26ff2149208ed1beec24d
Reviewed-on: http://codereview.qt.nokia.com/1829
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-20 12:47:25 +02:00
Samuel Rødal
48f761a3e1 Fixed build of generic linuxinput plugin.
Change-Id: I2289e369c831bfee9646ffe5c587647443548804
Reviewed-on: http://codereview.qt.nokia.com/1870
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-20 12:47:25 +02:00
Thiago Macieira
2dcd3939a8 Cleanup qRound and qRound64: provide overloads for double and float
Instead of having #ifdefs for the type of qreal, simply provide
overloads for both types.

Change-Id: I58582f57d5cd68fcad3fe9efb5fea5935f61b9e3
Merge-request: 17
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1542
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-20 10:29:33 +02:00
Olivier Goffart
a39ca22b4d Do not use qRound with integers
Required for https://qt.gitorious.org/qt/qtbase/merge_requests/17

Change-Id: I5319ea99eb083c5931c55a246f7057fbc88c8fa4
Reviewed-by: Thiago
Reviewed-on: http://codereview.qt.nokia.com/1866
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-20 10:29:05 +02:00
Charles Yin
acc16fe345 Add docs for QSqlRelationalTableModel::JoinMode
Task-number:QTBUG-8217
Reviewed-by:Michael Goddard

(cherry picked from commit e2e62bc810d21fecc9ed1d1db486b529b760d292)

Change-Id: Ie2af750c3a64aa634e11617cf9b3f9e7bdcf3a5f
Reviewed-on: http://codereview.qt.nokia.com/1854
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Charles Yin <charles.yin@nokia.com>
2011-07-20 08:25:08 +02:00
DaNiMoTh
23e4d1a517 Fixed behavior on NULL foreign keys
Instead of using a simple INNER JOIN, like:

SELECT a,b,rel.c FROM table1, table2 WHERE (table1.smthing =
table2.smthing)

which doesn't show row where foreign keys are NULL, allow use of LEFT
JOIN like:

SELECT a,b,rel.c FROM table1 LEFT JOIN table2 ON table1.smthing =
table2.smthing

The trick works also for multi-relational tables.
Just remember to use the new API setJoinMode.

Signed-off-by: DaNiMoTh <jjdanimoth@gmail.com>

Task-number:QTBUG-8217
Reviewed-by:Michael Goddard
Reviewed-by:Charles Yin

Merge-request: 2576
Reviewed-by: Charles Yin <charles.yin@nokia.com>
(cherry picked from commit c4280dbd9bb37cca21d007f5f8b9217f80b44043)

Change-Id: I349f9418e4859923977942add59872b000cac2c5
Reviewed-on: http://codereview.qt.nokia.com/1853
Reviewed-by: Charles Yin <charles.yin@nokia.com>
2011-07-20 08:24:59 +02:00
Jiang Jiang
d4af9f6f2d Use truncate only for subpixel boundingBox x position
Since Lion, Core Text starts to return fractional values for
x origin in the glyph bounding box. To get correct alignment
we need to make it integer, it seems that round will cut certain
pixels (x = 0.6 will be round to 1, then that glyph will be moved
too much to the left in image glyph cache). Reverting 4297b85a
appears to work fine on previous version of Mac OS X as well.

This change will not affect Windows (DirectWrite) and FreeType
font engines since they both return integer values for that.

Change-Id: I830f5b0bd27cad3a3a84b157da428134fb979703
Reviewed-by: Eskil
Reviewed-on: http://codereview.qt.nokia.com/1667
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-20 00:01:35 +02:00
Joerg Bornemann
9a7a18f83a fix QFileInfo::isSymLink() for NTFS mount points
Mount points are no symlinks. Period.
This was a regression to 4.7 which broke building Qt in a mount point.

Change-Id: Ib36688d7d394bbb7ab52629f8273c7fe4c0d7be8
Reviewed-by: Thomas Hartmann
Task-number: QTBUG-20431
Reviewed-on: http://codereview.qt.nokia.com/1830
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
2011-07-19 16:49:02 +02:00
Olivier Goffart
55d68a16aa Add a qHash for QUuid
Change-Id: Ib0d9a765b8db3b34aa20d510de501c72a54cacbe
Reviewed-on: http://codereview.qt.nokia.com/1743
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Xizhi Zhu <xizhi.zhu@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-07-19 16:49:02 +02:00
Olivier Goffart
d5bdbd70b3 Update the documentation of QUuid::operator QString
2c8e030a3f forgot to make it obsolete

Change-Id: Ic4d1f04c8c9c6656c3e93c60e7483b14f4517f19
Reviewed-on: http://codereview.qt.nokia.com/1742
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-19 16:49:02 +02:00
Olivier Goffart
77ed8787ac Fix use of C style cast.
Fix the test tst_Moc::oldStyleCasts()

(The test make sure moc do not generate old C cast, by compiling the
generated code and testing for gcc warning. But if it is present in the
public header, the warning will be shown)

Change-Id: I2fd3d01e7d78639d97bea021c200afbe2caae85f
Reviewed-on: http://codereview.qt.nokia.com/1772
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-07-19 16:49:02 +02:00
Laszlo Agocs
ba1b6f16ae Implement todos in touchscreen generic plug-in.
The patch implements periodic clearing of the point states when no
activity occurs (i.e. no ev_syn is coming at all, meaning that most
probably all the fingers are already up) and also moves the entire
functionality into a separate thread even when used as a plug-in.

Change-Id: Ib1daa738085b61af9b07eb8a284416e5a3fcabe8
Reviewed-on: http://codereview.qt.nokia.com/1744
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-19 15:00:46 +02:00
Martin Petersson
9581c90395 QNetworkAccessFileBackend: Do not accept file url without scheme set.
In Qt 4.8 this generated a warning. For Qt 5 we should no longer
accept file urls without a scheme set. So you should use file://
for local files.

Change-Id: I57789e2b56b712aa4f370aec9437c6febf0d0211
Reviewed-on: http://codereview.qt.nokia.com/1822
Reviewed-by: Markus Goetz
2011-07-19 15:00:46 +02:00
Olivier Goffart
6c984d6c15 "Fix" the crash at startup on MSVC
The problem is that for some reasons, QByteArray::shared_null (and
probably shared_empty, and the ones for QString) are not in the .rodata
anymore, and they are initialized by code.
programs like QMake, which has others global objects (like global
QFiles) that uses QByteArray crashes, because they reference and
dereference shared_null (and try to destroy shared_null)
That happens before shared_null's refcount is initialized to -1

The solution here is not to ref() the objects that have a refcount of 0
(that is what the refcount is before it is initialized to -1)

The real fix to this problem would be to understand why it is not in the
proper section, and make sure it is.

Change-Id: I5b7e966ed4c460b90dba70855f4dc50685dff97f
Reviewed-on: http://codereview.qt.nokia.com/1712
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-15 18:46:50 +02:00
Kim Motoyoshi Kalland
b1a0f7c0d2 Moved red-black tree from qtriangulator.cpp into its own file.
Moved the red-black tree class so it can be used outside the
triangulator as well.

Change-Id: I1d63fc88502e8e6c390cac2820c0ce45721cda79
Reviewed-on: http://codereview.qt.nokia.com/1710
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-15 17:14:37 +02:00
Thiago Macieira
412ef92162 Fix the timeout calculation for futexes in QMutex.
Recalculate how much time is remaining.

This commit needs to be backported to 4.8.

Change-Id: Ib587335bb90306e65969bb26256fb388f8f6bd24
Merge-request: 20
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1666
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-15 11:39:25 +02:00
Olivier Goffart
2c8e030a3f Deprecated QUuid::toString
Change-Id: I1186358df1c3f7615868725d93621608ed22ac99
Reviewed-on: http://codereview.qt.nokia.com/432
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-15 11:39:19 +02:00
Ritt Konstantin
92a1a3cc4f fixup for d17c76feee
removing the NoCategory enum value caused all category flags to change.
not an issue for qchar where they were used properly, but an issue for qregexp
where the hardcoded values were used instead.
the `all_cats` could be set to `FLAG(QChar::Symbol_Other + 1) - 1` which is shorter,
but I don't want hardcode the values in order to avoid similar issues in he future

Change-Id: Ie3ae2fca1b01d5911b834f439a0a6216766b8a20
Merge-request: 21
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1696
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-15 11:39:04 +02:00
Olivier Goffart
639943ddea Revert "make QChar::Unicode_Unassigned a constantly big value"
This reverts commit ebfd24a20b.

Breaks QChar and QString autotests

Change-Id: If1e915520ea491262c5f7753368be98c02ddac5e
Reviewed-by: Ritt Konstantin
Reviewed-on: http://codereview.qt.nokia.com/1672
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-15 09:49:52 +02:00
Olivier Goffart
4bb5167177 Regenerate unicode tables
Required after d17c76feee

Change-Id: I6820b5cbb78636aa5348bdddf8824ea5c78ba934
Reviewed-on: http://codereview.qt.nokia.com/1673
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-15 09:49:42 +02:00
Samuel Rødal
31d0891866 Deprecate some QPixmap functions (marked as obsolete already).
Reviewed-by: Olivier Goffart
(cherry picked from commit fb4903c4eca6a085c4c39078c11de03f5791f08e)

Change-Id: I87208fe830b47412b40044070fbdad4ed3d0af8c
Reviewed-on: http://codereview.qt.nokia.com/1551
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-14 14:38:15 +02:00
Samuel Rødal
1cc5464236 Deprecate some functions in QImage (that have been obsolete since 4.1).
Reviewed-by: Olivier Goffart
(cherry picked from commit 5ee3e4964d60f4d9cd7026c6f8b6fb93ddd39588)

Change-Id: Ib536c2b5a2b51ca42ab26129142242f30f6c6759
Reviewed-on: http://codereview.qt.nokia.com/1550
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-14 14:38:15 +02:00
Jiang Jiang
d29401ebad Fix warning for uninitialized variable
Reviewed-by: Eskil
(cherry picked from commit 94913c337a388e3d5938ece3a460f1f6e9590cd5)

Change-Id: Ie3c0986a3f5c70a654d9f14c3fae42b528c06b9e
Reviewed-on: http://codereview.qt.nokia.com/1632
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-14 14:38:15 +02:00
Peter Hartmann
6ab8ecb002 SSL internals: certificate verification: use mutex locker
there are return statements between locking and unlocking, so to not
leave the mutex locked when returning, this commit introduces a
QMutexLocker.

Change-Id: I74e2f329bf116e92250189bf097deb47d460d9dc
Reviewed-on: http://codereview.qt.nokia.com/1656
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-07-14 13:08:20 +02:00
Jiang Jiang
3b19eab45e Fix editable combobox style on Mac
Reviewed-by: Jens Bache-Wiig
(cherry picked from commit 459dc4a3bf0dc0ac54fc558379fdf551949dd1c6)

Change-Id: I744722d46ced0c2b6139bc232a819d0d802eed0d
Reviewed-on: http://codereview.qt.nokia.com/1633
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-14 13:08:20 +02:00
Jiang Jiang
9e7a21291c Skip boundry neutral characters in bidi itemization
According to UAX #9, bidiItemize should act as if those characters
don't exist. If we don't, dir and status.eor here may become
QChar::DirBN, thus interfere the result of bidiItemize.

Task-number: QTBUG-19949
Reviewed-by: Lars Knoll
(cherry picked from commit a5c3064439a9f1483565e5d9dfbf0342cd9236f0)

Change-Id: I224cfdf5b38433a31d33b6d944d5770accf74546
Reviewed-on: http://codereview.qt.nokia.com/1631
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-14 11:21:55 +02:00
Jiang Jiang
1080586abc Fix crash when app font is added
Loading app fonts will clear the application font cache, but
QFontPrivate::engineWithScript will try to load the font again,
in Mac the font engine used here must be the one used for shaping,
because subsequent sub font engines may be added to it during the
shaping process (QCoreTextFontEngineMulti::stringToCMap). That is
why we need to fetch the font engine directly from QTextEngine's
fontEngine cache instead of QFontCache.

Task-number: QTBUG-20250
Reviewed-by: Eskil
(cherry picked from commit 1f90ae36cff8acf581d1624bf011fe3a55c623c0)

Change-Id: Ibc0054cd7df65b65a67af4a7b15027731ba417fe
Reviewed-on: http://codereview.qt.nokia.com/1630
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-14 11:21:55 +02:00
Jiang Jiang
042cffd601 Apply 57993ba7 properly to 4.8
Because we have moved alignLine from qtextlayout.cpp to QTextEngine,
this patch has to be applied manually.

Reviewed-by: TrustMe
(cherry picked from commit 705416cdc8ee91ac88d80298dbe2971a9384c196)

Change-Id: Ibd657a52da1c510c839623738d49602b5c4a0824
Reviewed-on: http://codereview.qt.nokia.com/1640
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-14 11:21:55 +02:00
Jiang Jiang
b2a8832a10 Avoid buffer overrun in QMacPixmapData resizing
Shouldn't use size bigger than the original (source) pixels buffer
or the new one (just allocated).

Task-number: QTBUG-18547
Reviewed-by: aavit
(cherry picked from commit 348894a550510e54e7709d18676b4b10c9e5e9e3)

Change-Id: I7cc373b7d0f1ffef2d2f0cdddb7018c856849d29
Reviewed-on: http://codereview.qt.nokia.com/1635
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-14 09:27:15 +02:00
Eskil Abrahamsen Blomfeldt
1f8418807a Fix potential crash when clicking in a text edit
Since the attributes() call might resize the layout and therefore
delete the previous data, the logClusters pointer might be dangling
at this point. We need to reget it to make sure it's valid.

Task-number: QTBUG-20310
Reviewed-by: Jiang Jiang
(cherry picked from commit c0772f44fb1d53608ff629fc622103698c6d0ee5)

Change-Id: I20a29d0c529764eb5d41cb3383c22b6cad8de255
Reviewed-on: http://codereview.qt.nokia.com/1598
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-13 15:13:52 +02:00
Ritt Konstantin
ebfd24a20b make QChar::Unicode_Unassigned a constantly big value
this makes the version based checks a bit simpler (and thus faster)

Change-Id: I975c6d043d238a5c16a4b13f8379e87fbade23cc
Reviewed-on: http://codereview.qt.nokia.com/1586
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-13 13:31:42 +02:00
Ritt Konstantin
46e2985379 drop a dead QChar::Punctuation_Dask enum value
Change-Id: I22c67ff7c08ab514a646bad86eb8cd0f41099e9c
Reviewed-on: http://codereview.qt.nokia.com/1585
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-13 13:31:29 +02:00
Ritt Konstantin
d17c76feee drop an obsolete QChar::NoCategory enum value
there is no such category in the Unicode specs. the QChar::NoCategory
was a subject of bugs since it was introduced. int 4.6 it's meaning was
limited to mention ucs4 > UNICODE_LAST_CODEPOINT only (which is useless anyways)
in order to preserve the old (wrong) behavior.
fix it now for qtbase

Change-Id: I630534824e071090b39772881e747c1fdb758719
Reviewed-on: http://codereview.qt.nokia.com/1584
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-13 13:31:13 +02:00
Markus Goetz
4a8d8055b4 QNAM: Introduce clearAccessCache()
Task-Number: QTBUG-17312

Change-Id: I4d7bb22f4aa0292ac6604d783fa9fd218db691e5
Reviewed-on: http://codereview.qt.nokia.com/1574
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-13 12:07:47 +02:00
Lars Knoll
718153cfa0 Fix compilation on MSVC
MSVC apparently doesn't like the way the QString::Data
pointers got initialized.

Also fixed a few warnings about signed/unsigned conversions.

Change-Id: I1267979af7601129e5483f8785d4982a1f2f8182
Reviewed-on: http://codereview.qt.nokia.com/1558
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-13 10:38:59 +02:00
Pierre Rossi
92c4b63ee1 Fix a crash with QGraphicsScene.
It happened when the scene gets deleted after ~QApplication has been
called.

test case:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QGraphicsScene *scene = new QGraphicsScene(&a);
    return 0;
}

Change-Id: I74d4023c9575242a2e334b2c786e00d0686c452b
Reviewed-on: http://codereview.qt.nokia.com/1544
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
2011-07-12 19:59:40 +02:00
Thiago Macieira
a8fd5b9d2a Fix uses of qRound on non-floating-point types.
It's silly to round integeres, since they are already round. At most,
this would waste CPU cycles without any benefit.

Change-Id: I6fc0152f4416d723b65966e5d48cc7a07957b83c
Merge-request: 17
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1541
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-12 19:59:36 +02:00
Olivier Goffart
1bedbb3706 Fix compilation with icc 11
Rvalues reference are not supported by icc11 yet.
Disable all C++0x feature on that compiler.

Task-number: QTBUG-19979
Change-Id: Ifca939b18aa933b047883584cdf91f5543b852b5
Reviewed-by: Thiago
Reviewed-on: http://codereview.qt.nokia.com/1535
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 17:02:38 +02:00
Markus Goetz
2b5dcfcee1 QNAM HTTP: Re-write compression code
This eliminates some code (header parsing) that can be done by
zlib already.
Add support for 'deflate' encoding.
Also do less memory copying while uncompressing.

Change-Id: I94de21e3c58b904dd91d004c375ed8cbea56cb0b
Task-Number: QTBUG-13191
Reviewed-on: http://codereview.qt.nokia.com/1314
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Markus Goetz
2011-07-12 15:34:12 +02:00
Thiago Macieira
363c710bc4 Add the #defines for C++0x features in GCC 4.6
Merge-request: 8
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>

Change-Id: I9176f53bd98692c31e49d1d98f91641661a52044
Reviewed-on: http://codereview.qt.nokia.com/1522
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 13:57:14 +02:00
Markus Goetz
37be55a86f QNAM HTTP: Do zero-copy for small HTTP replies by default
Task-Number: QTBUG-19046

Change-Id: I34bf432c81d94787524124b7d110a00305a660c1
Reviewed-on: http://codereview.qt.nokia.com/1516
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-07-12 13:57:14 +02:00
Peter Hartmann
e11fac22c4 QSslCertificate: extend documentation for new verify method
Change-Id: I47e038299a7e6ef18206839ff59ecef9f0860415
Reviewed-on: http://codereview.qt.nokia.com/1510
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-07-12 13:57:14 +02:00
Richard Moore
451f3b3785 Add the ability to verify a chain of certificates
Currently it is only possible to verify a certificate chain when
connecting to a server. This change makes it possible to verify a
chain at any time.

Change-Id: Ib70ad7b81418f880e995f391b82ce59561ededb8
Merge-request: 11
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1509
2011-07-12 13:57:14 +02:00
Lars Knoll
ad35a41739 Refactor QByteArray to allow for const data
Similar refactoring as done for QString. Make
shared_null read-only, and add support for
compile time generated QByteArrayData.

Add support for properly reserving capacity.

Change-Id: Ie4c41d4caac7b3b4bb1aef40c1c860a30b82edb8
Reviewed-on: http://codereview.qt.nokia.com/1484
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 12:28:12 +02:00
Jedrzej Nowacki
9fea02400c Cleanup reference counting in QDateTimePrivate class.
It is better to use QSharedData which is a common interface for ref
counting.

Change-Id: I990476d6763901bf383f241bce16fe26665b021c
Reviewed-on: http://codereview.qt.nokia.com/1439
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 12:28:12 +02:00
Lars Knoll
82454b6014 remove unneeded cast operator on QConstStringData
Change-Id: Ib5f090cd6c716e1d936894be206b78629e70137b
Reviewed-on: http://codereview.qt.nokia.com/1487
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 11:04:04 +02:00
Olivier Goffart
6618dd877f Introduce QT_DEPRECATED_SINCE
To be used to versionize deprecated symbols

Symbols deprecated in Qt 5.0 need to be inlined

Change-Id: I696a834c25b7e86acf14ae081ea91ef993a5b19e
Reviewed-on: http://codereview.qt.nokia.com/431
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-12 11:04:04 +02:00
Peter Hartmann
94e110ca5f QSslCertificate: rename "tag" to "attribute", as in the RFC
RFC 2459 "Internet X.509 Public Key Infrastructure" uses the word
"attribute" for fields in a certificate like common name, organization
etc.

Change-Id: I51e595acbe3e146acf81af21cf48e554fa9490e4
Reviewed-on: http://codereview.qt.nokia.com/1453
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-12 09:25:06 +02:00
Jedrzej Nowacki
12d9436522 Cleanup reference counting in internal::Base class (qtconcurrent)
It is better to use QSharedData and QExplicitlySharedDataPointer then
doing manual ref counting.

Change-Id: I5674046141701bd48a53415ab96fcb6b538e79e6
Reviewed-on: http://codereview.qt.nokia.com/1440
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 18:58:41 +02:00
Jedrzej Nowacki
d1f080138a Cleanup reference counting in QIcon class
It is better to use QSharedData and QExplicitlySharedDataPointer then
doing manual ref counting.

Change-Id: Icbb06d92102bcc906291238c5895a05e8d0e6de1
Reviewed-on: http://codereview.qt.nokia.com/1438
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 18:58:41 +02:00
Richard Moore
eab215070e SSL: Move the code for extracting the name of an ASN1_OBJECT
Moves the code for extracting the name of an ASN1_OBJECT to a function.
We're going to need this again for implementing support for X509
extensions.

Change-Id: I43276eb375b37f5fef0d981f4003220d7e7b81ba
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1452
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 17:33:37 +02:00
Richard Moore
852d4b03f6 SSL: Add methods to access the tags of the subject and issuer of a cert
Add methods that return a list of the tags in use in a certificate
issuer or subject. This means that unknown elements of these fields can
be accessed.

Change-Id: I588989e34f541b1d31cc9e97f5a85d1624ece1b1
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1451
2011-07-11 17:33:16 +02:00
Richard Moore
14b56b2be4 SSL: Make the internals of certificate name info match the externals.
The internals of QSslCertificate were using QString but the API used
QByteArray, this commit unifies the code. This means that we don't keep
converting things.

Change-Id: I29fc149a85b77e786a6e90e5154c62f713476599
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1450
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 17:33:00 +02:00
Richard Moore
8499fb3a9a SSL: Store x509 name entries that have no short name as their OID.
Previously, x509 name entries that didn't have a shortname would all be
(accidentally) stored with the tag 'UNDEF'. This commit changes things
so that they are stored using the string form of their OID.

Change-Id: I667306cc4f91b1ca84f29b986bc21daadeb089b6
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1449
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 17:32:47 +02:00
Peter Hartmann
c299b4deac SSL internals: rename methods in the SSL backend to reflect public ones
Change-Id: I234c740b1acbfea670d6170332626f5e3ba49328
Reviewed-on: http://codereview.qt.nokia.com/1437
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-11 15:52:33 +02:00
Thiago Macieira
0c0676ada2 Remove #ifdef for platforms where QChar was packed -- there aren't any
On ARM OABI, sizeof(QChar) was 4, so we used to pack it so QChar[] was
isomorphic to ushort[]. We don't support the OABI anymore and the EABI
does the right thing.

Change-Id: I181dd2f169f6868450302e269ef9ad5d643f306f
Merge-request: 13
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1386
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 14:17:33 +02:00
Markus Goetz
06f2c9da46 QNAM: Remove QNetworkAccessHttpBackend
Qt 5.0 is using QNetworkReplyHttpImpl

Change-Id: I230230dc8b81e55a6c0cc8e1d85714e49fd35d17
Reviewed-on: http://codereview.qt.nokia.com/1381
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-11 12:43:52 +02:00
Thiago Macieira
f9035587b9 Replace try/catch blocks in favour of destructors in the event loop.
This has two direct benefits:
1) compiles regardless of -fno-exceptions: no need for #ifndef
QT_NO_EXCEPTIONS or QT_TRY/QT_CATCH

2) no QT_RETHROW either, which means the backtrace of an application
crashing due to an uncaught exception will include the actual throw
point.

Change-Id: I18e5500e121bfa81431ef16699df96d962794f0e
Reviewed-on: http://codereview.qt.nokia.com/663
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 12:43:52 +02:00
Jiang Jiang
915ec02cad Remove some metrics parsing code from Core Text
The respective value in some of the default fonts like Lucida Grande
are simply not reliable. It seems that the only reliable way to get
such information is by going through all the glyphs.

It seems that these code are not well tested on Mac and should be
removed for now since it caused visible regressions in QLineEdit
rendering.

Reviewed-by: Eskil
(cherry picked from commit 8032d6f4ced50837e126f28c1475ad89eaf91ad7)

Change-Id: I85e71a2e3228a367659be9f5f6ec3e667e0ce902
Reviewed-on: http://codereview.qt.nokia.com/1264
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-11 12:43:52 +02:00