Commit Graph

10583 Commits (250190b39bed279ca075bf1f2b2aaf6839bb9be4)

Author SHA1 Message Date
Marc Mutz 250190b39b QMap: don't dereference nullptr
root(), leftNode() and rightNode() can be nullptr.
These pieces of code happened to work because the first thing lowerBound()
does is

   Node *n = this;
   // ...
   while (n)
     // ...

But that is _after_ dereferencing nullptr, which is undefined behavior.

So, check first, then deref.

Change-Id: I9137bf6e21014cd68404a7e49a748910b1d768cf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-17 09:31:25 +02:00
Kai Koehne bc9c03a550 Remove mentioning of 5.0 Alpha from QPA Readme
While at it, I hope that qplatformtheme API's are stable
by now :)

Change-Id: I83bf3118c91608710bb19380458e8f55cb3d427b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-09-17 09:31:19 +02:00
Kai Koehne 03951bd3ff Fix name of argument in documentation
Change-Id: Ia137f75865390f4bbabd65c75ba81ac4bba93eba
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-09-17 09:30:54 +02:00
Thiago Macieira cfa5c1698d Fix the C++11 and GCC-atomic intrinsics when not using GCC
Both Clang and ICC complain about the use of those atomics when used
with a forward-declared pointee. GCC doesn't, which makes me think
it's a GCC bug.

When using QBasicAtomicPointer<Foo> with these atomics, the _q_value
member causes the instantiation of QAtomicOps<Foo>, which causes the
instantiation of the regular member function
QAtomicOps<Foo>::fetchAndAddRelaxed. The problem is that function
takes a QAtomicAdditiveType<Foo>::AdditiveT as parameter, which
requires sizeof(Foo). Clang 3.3 and ICC 14 correctly expand and
complain. GCC 4.7-4.9 apparently don't.

The fix is to apply the same trick we used for the other atomics:
change all ops functions (including fetchAndAddRelaxed) to be member
templates. That way, they can't be expanded until the actual use.

Clang errors:
qgenericatomic.h:73:33: error: invalid application of 'sizeof' to an incomplete type 'QMutexData'
qatomic_gcc.h:136:48: note: in instantiation of template class 'QAtomicAdditiveType<QMutexData *>' requested here
qbasicatomic.h:272:22: note: in instantiation of template class 'QAtomicOps<QMutexData *>' requested here

ICC errors:
qgenericatomic.h(73): error: incomplete type is not allowed
    detected during:
      instantiation of class "QAtomicAdditiveType<T *> [with T=QMutexData]" at line 111 of "qatomic_cxx11.h"
      instantiation of class "QAtomicOps<T> [with T=QMutexData *]" at line 272 of "qbasicatomic.h"

Found-by: Tor Arne
Change-Id: I9b10648cd47109a943b34a4c9926d77cd0c4fe12
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-09-17 03:07:09 +02:00
Thiago Macieira a33d9351a8 Remove useless code setting but not using variables
Clang 3.3 found a variable assigned to itself, probably to cause
GCC to shut up about a variable set-but-unused. So simply stop
assigning the value at all to this variable.

qxcbxsettings.cpp:155:16: error: explicitly assigning a variable of type 'uint' (aka 'unsigned int') to itself [-Werror,-Wself-assign]

Change-Id: I74ae8f724e87c1b3f6b9d358e13d6a440ff4a3e1
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-09-17 02:57:08 +02:00
Dario Freddi 76b06f993e QObject: allow connecting to functors with a receiver object
Up to now, it was only possible to connect to functors in a direct
way, without being capable of using Qt::ConnectionType. This patch
allows for specifying a receiver for Functors and function
pointers, hence making it possible to specify effectively the
connection type.

To do this properly, it was needed to add an enum in FunctionPointer
representing whether the considered function is a member function
or not, to reduce ambiguity upon overloaded calls.

Moreover, now senders are checked for the existence of a slot obj
as well. This way, should the context be freed, the slot obj and
the functor contained in it will be freed as well.

On a side note, connecting to a static slot
(like QCoreApplication::quit) specifying the receiver object is
now compiling.

Change-Id: I46474099413b1dc6ca4db9934191d469baeef070
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-09-16 23:46:30 +02:00
Tor Arne Vestbø ae577e6b8f Don't use ARMv5/6/7 atomics on 64-bit ARM, as they are AArch32 specific
Change-Id: I0c359e62a8cbf560691019187f316561bddbee52
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-16 23:19:26 +02:00
Tor Arne Vestbø 51da240149 Don't use Mac OS X QCollator backend on iOS
We don't have CoreServices on iOS, which hosts the UC* APIs.

Change-Id: I95b1b173e57665c2fc2cdc1701f8ad57cdc0e567
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-09-16 23:19:06 +02:00
Tor Arne Vestbø 410e9cd5b1 Add support for ARMv8/ARM64 to qprocessordetection.h
As used by the upcoming iPhone 5S' A7 SoC.

Change-Id: I276dc739c2565bce23fb1a12c9470dcd311e67ba
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-16 23:18:59 +02:00
Marc Mutz 15c384f82f QDateTime: fix unused function warning on non-Windows
Change-Id: I8fbf1f8b0ebfdf58cd72c724326227dc1610e746
Reviewed-by: John Layt <jlayt@kde.org>
2013-09-16 22:58:44 +02:00
Konstantin Ritt 36e768cd71 Un-export qt_registerFont() internal function
QPlatformFontDatabase::registerFont() method must be used instead.

Change-Id: I80aa5567a748a980f689c90125f8bcc20c304ee2
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-09-16 20:25:06 +02:00
Alan Alpert b674b15dff Add QFileSelector API
For easy cross-platform and cross-device UIs, automatic asset swapping
based on filename is being developed. This API provides the logic for
the swapping, so that applications can use it themselves with the same
logic as any automatic swapping done in application templates.

Selector set is initially minimal, aiming for just platform selection
and enabling a common selection mechanism for Qt platforms to use.

Change-Id: I219517d740fa7385e923a9e09cb7e241378f857a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-16 19:42:22 +02:00
Olivier Goffart 4b02585f30 Fix spelling in Q_STATIC_ASSERT in qobject_cast
Change-Id: Ibc2b1296bf7eb20e41c1af044797a9a026bed369
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-09-16 15:36:59 +02:00
Martin Smith 433f2315ac qdoc: Now reports duplicate page titles better.
Currently, qdoc reports duplicate pages, when it should be reporting
duplicate page titles. Sometimes the duplicate titles actually refer
to the same page, but often they are different pages with the same
title. This update changes the error message to better indicate that
two identical page titles were seen.

A further complication was that the qdoc warnings for these duplate
page title errors were useless when the duplicates were in different Qt5
modules, because the support for file location information in the qdoc
index files was inadequate. This update adds better location information
to each section in the index file. This makes the index files bigger
and will increase qdoc runtimes, hopefully not too much.

Task-number: QTBUG-33506
Change-Id: I35db3c5e1551b9ef748d63377e94453da80c1e26
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-09-16 15:35:33 +02:00
Tor Arne Vestbø 4bae7158d3 Don't send posted events from QWindowSystemInterface::sendWindowSystemEvents
The responsibility of sendWindowSystemEvents() is to process events from
the window system. Historially that logic was part of the QPA/QWS event
dispatcher, which naturally also sent posted events. Through refactoring,
the code at some point ended up in in the QWindowSystemInterface class,
still with the posting of events in place.

This resulted in QPA event dispatchers adopting a pattern of just calling
sendWindowSystemEvents(), as that would cover both posted and window system
events. Other event dispatchers would call sendWindowSystemEvents(), and
then use a base-class implementation from QtCore for processing events,
resulting in two calls to QCoreApplication::sendPostedEvents() per
iteration of processEvents(). This breaks the contract that processEvents
will only process posted events that has been queued up until then.

We fix this entanglement by removing the sendPostedEvents() call from
QWindowSystemInterface::sendWindowSystemEvents() and move it to the
respective event dispatchers. For some EDs it means an explicit call
to sendPostedEvents, while others were already doing sendPostedEvents
though a separate source (GLib), or using a base-class (UNIX/BB), and
did not need an extra call.

We still keep the ordering of the original sendWindowSystemEvents()
function of first sending posted events, and then processing any
window system events.

Task-number: QTBUG-33485
Change-Id: I8b069e76cea1f37875e72a034c11d09bf3fe166a
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-09-16 15:22:40 +02:00
Shawn Rutledge 4c19055cb1 remove unnecessary beginPaint and endPaint overrides
QPlatformBackingStore::endPaint does not take a QRegion parameter.
6ce6b8a378 set the API, but the
platform implementations were not all synced up since then.  There
was anyway no point in overriding beginPaint and endPaint on
platforms which don't need to do anything there.  This fixes
clang warnings of the form
QXcbBackingStore::endPaint hides overloaded virtual function

Change-Id: Id6cd0fc2c831a34576ac2c73eeb0d5741d26e622
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-09-16 15:21:40 +02:00
Andrew Knight 7d3f775075 WinRT: Disable PCRE JIT
That is what we do on on other "limited" platforms.

Change-Id: I608880698d60ab10ecbb2f3ce12ff6c5eaab7eed
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-09-16 12:23:46 +02:00
David Faure aabbd27dda Simplify QFileSystemModel::remove by using QDir::removeRecursively
This also fixes it in case of hidden or system files, which
were missing from the filter (found by Denis Kovalskiy).

Change-Id: Ic12de12ec51c20de52d040514e90be5e783add43
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-16 12:12:09 +02:00
Eskil Abrahamsen Blomfeldt 104debb662 Don't depend on QtQuick plugin in QtWidgets
The accessible plugins directory contains a QtQuick plugin
as well as a widgets plugin. We need to specify the correct
one to avoid all widgets applications implicitly depending
on QtQuick on Android.

Change-Id: I72b2ee4fcd2d7914fc2ed7996f504ce2df79842d
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-09-16 08:56:09 +02:00
Oliver Wolff 134a020e2a Implement windowsErrorString for WinRT
FORMAT_MESSAGE_ALLOCATE_BUFFER isn't available for WinRT

Change-Id: Ib9cf2a11a4e84f3ff010665bd53b4ffb0d0bfcce
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-09-16 00:14:00 +02:00
Oliver Wolff cfc7cc39f9 qelapsedtimer for WinRT
Change-Id: Ic31fa667bdc746776d8e29564ea8a1ba6e7384f3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-15 22:41:48 +02:00
Nicolás Alvarez 1985f818e7 Fix QTextEngine build on MSVC2008 debug mode.
This was broken in 7ac6ce21 which removed some unused functions;
but MSVC2008 in debug mode requires this particular operator overload.
I'm re-adding it in an appropriate #ifdef so it doesn't cause "unused"
warnings in other platforms/compilers.

Task-number: QTBUG-33473
Change-Id: I6dfba0fa5f835e848e8a1e4213efb030fb5def3d
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-09-15 19:51:50 +02:00
Oliver Wolff fee7420a73 Fixed sqlite build for WinRT
Change-Id: Idf5bfa8b55e8d7db46207e55de1e9176def503a6
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-09-15 16:13:49 +02:00
Giuseppe D'Angelo f4cc344e01 Revert "Reimplement qBinaryFind in terms of std::lower_bound"
After a bit of discussion, we should actually deprecate qBinaryFind too.
This puts the old code back (to avoid behavior changes / source
breaks).

This reverts commit 23d7f6ee5d.

Task-number: QTBUG-33473

Change-Id: I7f7d25171e14061e51543c501c30a7b6b184a8fd
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-09-14 23:43:00 +02:00
Olivier Goffart 7d7e8ae3fa Use Q_STATIC_ASSERT to report error about missing Q_OBJECT
Q_STATIC_ASSERT gives better error with C++11 enabled.

Aslo the qt_check_for_QOBJECT_macro had warning on some compiler since
it used null reference

Change-Id: Ic6115da800064b00c50a5762f0b79f5f656bf750
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-14 20:33:29 +02:00
Thiago Macieira 6b9d125621 Do 64-bit loops in QBitArray::count(bool)
On 64-bit platforms, with unaligned loads, this is defintely an
improvement since we can run fewer instructions. On 32-bit platforms
with unaligned loads, we'll do the exact same number of loads. On
platforms without unaligned loads, it's no worse.

Change-Id: Idd5dd5213975d77bbc3adf486adbf6f8ef071341
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-09-14 20:33:29 +02:00
Thiago Macieira 6f0fdaa76c Let the compiler do the unaligned loads in QBitArray::count(bool)
For platforms where the CPU can do unaligned loads on its own, like
x86, the compiler will generate actual loads. On other CPUs, it will
do the byte-by-byte load like we were doing. The compiler cannot
generate worse code than our hand-rolled load, so this change can only
improve performance.

Change-Id: I32a89e64aa64d8af504be6c5a10b04d7573cdb98
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-09-14 20:33:29 +02:00
John Layt 6c3a9df3fe QDateTime - Store Qt::TimeSpec, remove Daylight Status
Change storing the spec from QDateTimePrivate::Spec to Qt::TimeSpec.

Remove the storage and use of the Daylight Status as it is almost
never set or used, and would be inaccurate if the tz were to change.
It will be replaced later with proper daylight transition support.

This simplifies the code and makes the msecs storage change easier.

Change-Id: I78a70905025d7eddf1c2dc6001f6b490e5a2b3b8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-14 18:31:00 +02:00
John Layt e76c312eb8 QDateTime - Switch to using msecs based functions
A number of QDateTime functions directly use or modify the data stored
in the private, but future changes to store msecs and status make this
maintenance more complicated.  Where possible simplify this code to use
the standard msecs functions, standard constructors, or public api
instead.  This greatly simplifies the functions and the following msecs
storage code changes.

This is an intermim step towards storing the time in msecs.  Some
functions will be slower as a result of this change, optimization
will take place after all the msecs changes are completed.

Note this also removes a test that used valid QDates outside the range
of msecs, this change in behavior will be documented in the final
mscs change.

Change-Id: I6ef710f24babc7024091010064082e9be0b5bbfe
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-14 18:31:00 +02:00
Andrew Knight f6e6dde369 winmain for winrt
WinRT passes the executable and Appx server info to the CRT main, and
supports several additional activation arguments as well. This handles the
arguments passed to main as well as the case where a modern app is
launched from an external application (e.g. Qt Creator).


Task-number: QTBUG-30198
Change-Id: Ia843e98c7843d5705f5f6d1c809de0b6bcdb5d26
Done-with: Kamil Trzcinski
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-09-14 15:42:24 +02:00
Konstantin Ritt 0adc96c1c4 Drop leftovers after 02651060b6
Change-Id: I011359a47ed47308a7d25e306fbf45a83a3a5715
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-09-14 08:06:46 +02:00
Konstantin Ritt 3e025708b4 Fix build with -Werror
The actual warning is:
src/gui/text/qharfbuzzng.cpp:589:67: error: cast from ‘void*’ \
to ‘uint {aka unsigned int}’ loses precision [-fpermissive]

Change-Id: I75cc7bad2147cd5e5e7c17bc22fe613280e86755
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-14 05:17:07 +02:00
Thiago Macieira 504a644862 ICC 13.0 supports atomics
See http://software.intel.com/en-us/articles/c0x-features-supported-by-intel-c-compiler

Change-Id: I45ba6aa640f82df4d06fd4412264892bfd58ffc3
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-09-14 03:20:25 +02:00
Thiago Macieira cc74159702 Base64: Implement the "base64url" encoding and the stripping of '='
The "base64url" encoding is defined in RFC 4648, which is the newest
version of Base64. There are also a few situations where the ending
'=' is not desired.

Change-Id: I9bb9fa55817b57d125189e4e795d6fde97caea6d
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-09-14 03:20:25 +02:00
Thiago Macieira 3154e1ccaa Whitespace: re-indent the {to,from}Base64 functions
The code must have been copied from somewhere, a sample
implementation.

Change-Id: Ieb6ac5d69824fe8a3f38710a22beb79ac986e182
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-09-14 03:20:25 +02:00
Sergio Ahumada 415f65fbff Merge "Merge branch 'stable' into dev" into refs/staging/dev 2013-09-14 01:11:43 +02:00
Thorbjørn Martsum 62fbf3ca6f QMessageBox - move margins to a left spacer
This patch moves labels indent and contents margins into a
left spacer, and it only puts the iconLabel in the layout
if there is an icon.

Change-Id: I6f3563a08fc15ec6ec267e095adf1734f7828355
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2013-09-13 22:06:26 +02:00
John Layt 92b0a7fa3e QTime - Add public api for get/set msecs since start of day
Add new public api to get and set the number of msecs since the start
of the day.  Modify QDateTime to use the new msecs api.

[ChangeLog][QtCore][QTime] Added new methods fromMSecsSinceStartOfDay()
to create a new QTime from an msecs value, and msecsSinceStartOfDay()
to return the QTime as the number of msecs since the start of the day.

Change-Id: I285b725b883f1f5524fda87ca81bd64ed99fe6f4
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
2013-09-13 22:06:26 +02:00
hjk 63a382a930 Add a static QFileInfo::exists(fileName) function
This avoids dynamic construction of the private class. According to
the benchmark we go from 4,550 to 3,900 instruction reads per iteration.
(without change 32629676 the baseline is 5,600)

Change-Id: I5df925e30dbd49bdde87173e481820574ce5abe1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-13 19:37:51 +02:00
hjk 4c709fb391 Add a note on symlink behavior of QFile::exists
Change-Id: I41ede0536f1b7093a7cde3d74a5e221df413aeea
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-09-13 19:37:14 +02:00
Thiago Macieira aef44c7970 Don't use an extension to the C++ language in public headers
According to Clang 3.3, this is an extension:
qpalette.h:178:9: error: anonymous types declared in an anonymous union are an extension [-Werror,-Wnested-anon-types]
qsizepolicy.h:148:9: error: anonymous types declared in an anonymous union are an extension [-Werror,-Wnested-anon-types]

If you try to simply give the struct a name, it complains with:
qpalette.h:178:16: error: types cannot be declared in an anonymous union

Change-Id: I61c69b8e42a1f4c4a15a0733f2d7efa0b3e44864
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-09-13 19:12:09 +02:00
Thiago Macieira c1c715f800 Optimize QBitArray::count(bool)
Ever since 76e0223619, qPopulationCount
was extracted from QBitArray and moved elsewhere. That unfortunately
meant that the 24-bit loads are completely useless, since
qPopulationCount always operates on 32 bits.

Instead, do a full loop on 32-bit and then do 16-bit and finally 8-bit
(for which there are qPopulationCount overloads).

Change-Id: If945609f075095257d12877c39434909ac190e54
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-09-13 19:11:48 +02:00
Thiago Macieira d7e424ee66 Remove unused QPF font engine support.
QWS is gone.

Change-Id: Ic04c4dcfff51522dd538bf2cb198dc2e02fe7572
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Peter Kümmel <syntheticpp@gmx.net>
2013-09-13 19:10:31 +02:00
Paul Olav Tvete 07538de8b1 Make nativeOrientation available in the public API
The QtSensors module defines the coordinate system relative to
QPlatformScreen::nativeOrientation(). However, that is not part
of the public Qt API.

Task-number: QTBUG-32144

Change-Id: I6941c5b8589219064749f18880775b803f23fbbd
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-09-13 19:08:27 +02:00
Sergio Ahumada f7837e28b5 Merge branch 'stable' into dev
Conflicts:
	src/concurrent/qtconcurrentmedian.h
	src/corelib/itemmodels/qabstractitemmodel.cpp

Change-Id: Iac46a90bbb2958cef7670031a4b59c3becd8538a
2013-09-13 18:04:17 +02:00
Laszlo Agocs 52e38509c6 Fix QWindow::moveEvent documentation
It handles window movement events, not mouse move events.

Change-Id: Ibc8fd0272756fcf87dfac210addbf2f87cfb39d5
Reviewed-by: aavit <eirik.aavitsland@digia.com>
2013-09-13 16:54:35 +02:00
Giuseppe D'Angelo 549c3248ec Remove qFill usages from uic
QtAlgorithms is getting deprecated,
see http://www.mail-archive.com/development@qt-project.org/msg01603.html

Change-Id: I58d0c78609381b20ffe8a68e36c8216689362ed5
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-09-13 16:53:14 +02:00
Stephen Kelly 8b0624182b MetaType: Fix operator{+,-}(int) with the type-erased const_iterators.
Make sure we don't modify the lhs. Instead copy it and advance the
copy.

Change-Id: I3440e8e175bfc299f8f83b816faca54fa3f79e43
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-09-13 14:37:41 +02:00
Stephen Kelly a9770c4b6c Remove some unneeded constructors.
Change-Id: I34f86960dc0cfaada509957bca5466b2765e8239
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-09-13 14:37:32 +02:00
Martin Smith 93d7ee0da3 qdoc: Eliminate duplicate page warnings in some cases
Prevent qdoc from reporting duplicate pages for external pages with
the same URL and title.

Task-number: QTBUG-33462
Change-Id: Idabdb241aaa4fe105f7b3ea78229ff1ae8776ecf
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-09-13 14:09:56 +02:00