| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When QtCore's global destructors are run, they delete the global
QLibraryStore qt_library_data and set the pointer to null. If something
happened to call QLibraryStore::instance() later, it would be recreated
and then weird things might happen. So prevent that from happening.
That usually cannot happen, since the only thing that can run after
QtCore global destructors are other QtCore global destructors or global
destructors from libraries that do not depend on QtCore. So we're
reasonably safe. There are two conditions in which something could run
after QLibraryStore::cleanup() and still try to access QLibraryStore:
1) indirect dependency, like a global destructor from a library that
doesn't depend on QtCore running code from another module that does.
2) static builds of Qt modules. In that case, the order of the global
destructors is totally arbitrary and we could get one from a module that
depends on QtCore running after QtCore's. That is the case from the bug
report.
Task-number: QTBUG-36294
Change-Id: Id199671275fd2535acf2d158857ce46b474e579b
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
|
|
|
|
|
|
|
|
|
| |
Some comparison operators comparing to const char *
where not implemented correctly.
Task-number: QTBUG-34024
Change-Id: Idbdc64c8ed93e88d9f2b2f55213bc785b33cb543
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid piping the test output to both the Windows system debugger, and
stdout. This fixes duplicate output in Qt Creator, which displays messages
from both sources.
[ChangeLog][QtTestLib] The (default) plain text logger on Windows now
logs to either the system debug log (in case no console is open), or
stdout, not both.
Task-number: QTBUG-34630
Change-Id: I35fe9f4a50cc660d79fad7dffa6d19659b2102ae
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
|
|
|
|
| |
Comments contained some typos. Comments have been replaced with
the ‘official’ description from
http://msdn.microsoft.com/en-us/library/8x5x43k7.aspx.
Change-Id: I25dda0911735b4a0d4f306bc95bc984be0080e2f
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
|
|
|
|
|
| |
Change-Id: I16e4aa32647793bf36fee60ed94db69a6ae2d8ea
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix parsing of ISO Date from being totally lenient to being semi-strict
by requiring the separator positions to be non-numeric.
[ChangeLog][Important Behavior Changes] Parsing of Qt::ISODate by
QDate::fromString() and QDateTime()::fromString() is not as lenient as
before, the date component separators are now required to be
non-numeric. This means a string like "2000901901" will no longer be
recognized as a valid ISO Date, but "2000/01/01" will still be even
though it doesn't strictly meet the ISO format of "2000-01-01".
Task-number: QTBUG-34141
Change-Id: I0e481144136c60d4cac61364b9b2c1d2cd1e78fc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
| |
Explicitly check that the QTimeZone is valid before trying to use it.
Change-Id: Iec415a2cb07071502fe71ee5ac92a7657e818f99
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
| |
Check day number falls in valid range before using as array index.
Change-Id: I8d7c203b97988633fe4c345d5e7002bba9c2c68b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
| |
Change-Id: I0211ed44513723392e3f50b76be10b95c0bcddd5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
These functions have been turned to static (although inline), which
means they need to be used or marked as possibly unused.
qglobal.h:712:37: error: unused function 'qFuzzyCompare' [-Werror,-Wunused-function]
Change-Id: Ie2ee713d26c86e0574b579c1ea42b9404c3d2035
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-35816
Change-Id: I996a86233f771d6a466c5c5eb6116df14cd00dbd
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
In the event the plugin loader encounters it due to some configuration
problem, it is otherwise detected as a plugin causing a crash
when trying to read the meta data.
Task-number: QTBUG-35970
Change-Id: I34182b3a61125e3b192dfd4b1dc03bd1e98c693e
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
Lack of the define is commonly used (and recommended by Apple) as a way
to distinguish iOS from OS X.
Task-number: QTBUG-35888
Change-Id: I5f3327e001c0af630984fbfde780d9b0c3e30754
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
|
|
|
|
|
| |
Change-Id: If9400eb5965c739334b3638731e7c80834de72b8
Reviewed-by: David Faure <david.faure@kdab.com>
|
|
|
|
|
|
|
|
|
| |
This warning no longer exists since at least MSVC.NET 2003. It's
reported to have existed on MSVC 6 and older only.
Task-number: QTBUG-35815
Change-Id: Ifb35d027edc3c1cbadac9a0d0a9c26524c52c87f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
| |
Change-Id: I2fd6fb2ae1663730a008221f6beeef19a5307246
Reviewed-by: David Faure <david.faure@kdab.com>
|
|
|
|
|
|
|
|
| |
Fix some spelling and grammatical errors in comments that show up in Qt documentation. No changes to code.
Change-Id: I2e946fda0bd9a2117f8e9b2fb300df9bf0a98a6c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
|
|
|
|
|
|
|
|
|
| |
Mostly just adding proper tags and sections, as well as a few
grammatical fixes.
Change-Id: I219517d740fa7385e923a9e09cb7e241378fcbdd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Shorten Qt::AutoConnection description, rearrange to match the order
of the subsequent rows.
- Note the thread used in Qt::DirectConnection
- "Emitter's thread" is ambiguous -- a signal is not necessarily
emitted from the thread that the emitter lives in.
- Misusing Qt::BlockingQueuedConnection WILL (not "can") cause a
deadlock. Qt even issues an error message before it freezes.
- Remove the \note command -- it breaks the table and displays the note
in a new paragraph.
Change-Id: Ib60cb665e0cd23e1e072402ec5d8be344b8454f7
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
|
|
|
|
|
| |
Change-Id: I935e6f278e539f8e6aaca0bc381371ec85aa5c67
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-34749
Corrected link to drag and drop example.
Corrected link to {mandatory fields}
Created target referring to macros for defining plugins
Change-Id: I387a2d9bab428b2eacd8d371f08c72f42f7e2be2
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The QVarLengthArray inside qlocale_blackberry.cpp was being preallocated with
512 bytes, that means internally it could grow up to 512 bytes using the
stack before switching to the heap, but its actual semantic size was still 0.
After qt_safe_read(... buffer.data() ...) was being called, data was written
to the QVarLengthArray buffer, but its semantic size was still 0, since it was
not resized or anything. This triggered an assertion when buffer[bytes] = '\0'
was assigned, since 'bytes' > buffer.size() ( == 0) despite buffer.capacity()
== 512.
Change-Id: I5503ee9b02413794f67730700fba05a4c194d465
Reviewed-by: Mehdi Fekari <mfekari@blackberry.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
|
|
|
|
|
|
|
|
| |
Removes a lot of copy-paste code for flagging printf style functions.
Change-Id: Iecc1e312d1f28b5cbb6b297039f1cdbbc888f843
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
| |
Task-number: QTBUG-35591
Change-Id: I63169bd8a9758a7dad33d4231d3d6c9d71c7e252
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
| |
- Explain that values() is unnecessary and causes an extra copy.
- Replace "are fastest" with "are faster".
- Briefly explain the snippet.
Change-Id: Iff1d3a0b6140fca1d78157aeeca3d538c4d78b84
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
| |
Windows 7 and later have LOCALE_SSHORTTIME, which is what we need.
Task-number: QTBUG-33718
Change-Id: I4c3f113d17102a37fb752de56f06b312f27c7887
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
|
|
|
|
| |
When using the visual studio generators, a moc parameters file
for each configuration is generated. The content differs because
the -DQT_NO_DEBUG may be added or not, depending on the configuration.
Change-Id: I52eae536289d451df72df2e4dba709851279694a
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
|\
| |
| |
| | |
refs/staging/stable
|
| |\
| | |
| | |
| | | |
Change-Id: I0cd3b1b33e6d9bec729d941b06aeeb3d21851820
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Unfortunately the QObject destroyed callbacks for QtQml and QtDeclarative can't
be called in sequence, because if the QQmlData has the ownsMemory bit set, then
the destroyed callback will delete the QQmlData, and the sub-sequent call to
the destroyed callback of qml1 will try to dereference the QQmlData's first bit
(ownedByQml1), which is already destroyed.
This patch fixes that by simply sharing the assumption of the first bit
indicating module ownership (QtQml vs. QtDeclarative) also to qtbase and using
it to distinguish between which destroyed callback function to call.
Task-number: QTCREATORBUG-10273
Change-Id: I2773a31a3e9b3a1c22d1c1f33b2f29f3296cb3cf
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This will break network paths passed as command line arguments.
Introduced by 4ff6951550cb6e39c3b31895c3af57037e90c9ac .
Task-number: QTBUG-35432
Task-number: QTBUG-30628
Change-Id: Ice9ce15275ef69e9e9e82daf5a303e7c56294368
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-33997
Change-Id: I0d4da562540df0e3732769881ba124cb980f6b82
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Behavior differs depending on whether the iterator is a value_type*,
or a different class entirely. Ensure that the correct behavior is
used when copying.
Task-number: QTBUG-33997
Change-Id: Ib6db2a3c4a5aa861b851833a7f0ecb855a3e828f
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
This struct is a specialization for the case that the const_iterator
is a pointer to the value type. Reflect that in the type name.
Change-Id: I0a4ac03840658056285080860baec8313746c71c
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
qrand() returns a number between 0 and RAND_MAX, which is only
guaranteed to be bigger than 32767. Dividing it repeatedly means
that the last bytes are always 0.
[ChangeLog][QtCore][QTemporaryDir] Fixed bug in QTemporaryDir name generator that dramatically
reduced randomness of the name.
Change-Id: I90613a652e6384296aed827e2714fe63cd8797ee
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To be able to call SetNamedPipeHandleState on stdin in a child
process, we must create a read-end pipe handle with the
FILE_WRITE_ATTRIBUTES flag set.
This can't be done with CreateNamedPipe but only with CreateFile.
Therefore we're creating the handles for the child process always
with CreateFile now. Besides, it's conceptually cleaner to have the
server handle of the named pipe in the calling process.
[ChangeLog][QtCore][Windows] Fix regression from Qt4 in QProcess.
It wasn't possible anymore to alter pipe modes of stdin in child
processes.
Task-number: QTBUG-35357
Change-Id: I85f09753d0c924bdc8a6cef1ea5dbe6b2299c604
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Recent commit 105d10de introduced the QMetaStringTable(QByteArray) constructor,
but failed to mark it as explicit.
The argument, the class' name, is not an equivalent representation of a
string table, so mark the constructor explicit.
Change-Id: I2f141969400b98d3253283bd6fb0b9d18f2d53b3
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of enforcing the check, we'll simply trust developers to do the
right thing. For one, it's useful to mix libraries during testing
(regression testing, git bisects, etc.). For another, Qt developers are
faced day-to-day with binary incompatibility issues anyway, so this
check is mostly superfluous.
If there's one commit we could be sure that isn't breaking binary
compatibility, that's the "Bump Qt version" commit. And yet that's the
one that would cause the fatal to trip...
Change-Id: I8965f764a6ca1b2d125b42bce7ac6b27e3afc8ac
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QHash::key() is O(n) and we're calling it n times. That can make repeated
calls to the meta object builder very slow, as for example QQmlPropertyMap
when inserting properties repeatedly.
Fortunately this is easy to fix, as the value in the hash map is also the
index, so we can simply iterate over the hash once. With the exception of
the class name, which we have to treat specially to ensure that it is always
the first entry in the string table.
Task-number: QTBUG-32720
Change-Id: Ic954c45c454107feee83216131f601cc69d4c63b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
qstrlen() returns a uint. When assigned to an int, the compiler warns
about sign conversions. Because these calls are used within templates,
the code appears in user generated code, and hence the warnings cannot
be suppressed by the -isystem directive. Using the -Werror flag, makes
the user code fail.
[ChangeLog][QtCore] Fixed sign conversion warnings in code using QMetaTypeId.
Change-Id: Ib7603679d6526467f8cbb9d7bcf5f56c6af47ceb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make
QCommandLineParser::add{Help,Version}Option()
QCommandLineOption::setDefaultValue()
QCommandLineOptionPrivate::setNames()
have transaction semantics: either they succeed, or they change nothing.
It's trivial to provide this guarantee, so do it.
Add a test for the surprising property that setDefaultValue("") resets
defaultValues() to an empty QStringList instead of one that contains
the empty string.
Change-Id: I61623019de3c7d2e52c24f42cc2e23ec5fddc4da
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix isValidId() which was failing valid IDs because it was splitting
name parts by \ instead of /. it was also rejecting offset from UTC
formats names. Add unit tests.
Task-number: QTBUG-35025
Change-Id: I4d23d2e54f4a9fac9afcc4eff0a02d6f4af21385
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We want to make sure that there's a constant propagation from the static
variable that is filled in with the current code-generation options.
With most compilers in debug mode, we'd carry dead code. With MSVC, even
inlining is really bad even in release mode, and it doesn't perform
constant propagation even with __forceinline.
Change-Id: I7a95ff6622b864771243990bb5e205b2df0c33fc
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure
mkspecs/macx-ios-clang/features/default_post.prf
tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
Change-Id: Iaba97eed2272bccf54289640b8197d40e22f7bf5
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
And that connectNotify and disconnectNotify might be called from
another thread
Task-number: QTBUG-34829
Change-Id: Id118b97b92e9aa085a1d4368282294f90cfb1706
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In some cases the classLoader is not able to resolve fully-qualified
names that contains forward slashes. Unlike FindClass() which expects
the fully-qualified name to contain slashes, the classLoader expects
the binary name, i.e., with '.' as separator.
This caused a crash in QtMultimedia when accessing a nested class.
Task-number: QTBUG-35298
Change-Id: I77728352fbab930ae1914bc1cb2189e458e179e2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I038df8034ee00868eeee18b1ed09f7a70e3dd77a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| |
| |
| |
| |
| | |
Change-Id: If42fd83a68543d59b5a3a6b89e2c402aa452b251
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make QJsonObject::const_iterator() part of the same doc
group as the non-const variant. Also add a \since
command with the correct value.
Task-number: QTBUG-33052
Change-Id: I97fa2cc44dae93decf2b99a1384e37579b7dac46
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Set dynamically the buffer size when reading pps objects since a pps file
size is not always fix.
Change-Id: I48f80389161bfbce3342e53ceec0b13bb7df0e4c
Reviewed-by: Tony Van Eerd <tvaneerd@blackberry.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
|