qt:qt.git
8 years agoRemove -fuse-ld=gold from webkit's LFLAGS
Niels Ole Salscheider [Sat, 1 Mar 2014 21:26:54 +0000 (22:26 +0100)]
Remove -fuse-ld=gold from webkit's LFLAGS

This flag is not supported by upstream gcc. Thus the build might fail if the
gold linker is found.

This fixes https://bugs.webkit.org/show_bug.cgi?id=89312.

Change-Id: I931081fccf64a43b32f2aaf2c3ad377391fdad4c
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
8 years agoWindows: Restore maximized/full screen widgets to correct screen.
Friedemann Kleint [Fri, 7 Feb 2014 09:27:56 +0000 (10:27 +0100)]
Windows: Restore maximized/full screen widgets to correct screen.

Partially revert 54865d47cfd859a0e84ba8e1bbff3b56c93d4e0d and
bring back parts from abba37cd0eff959edf2d011842cbf2b36cce8467 which
failed some tests on other platforms and never made it in.

Avoid setting a geometry on maximized windows since that leaves
them in a broken state. Instead, if there is a need to restore
maximized windows to a different screen, clear the maximized flag
before applying the geometry.

[ChangeLog][QWidget][Windows] QWidget::restoreGeometry() now restores
maximized/full screen widgets to the correct screen.

Task-number: QTBUG-21371
Task-number: QTBUG-4397

Change-Id: Ibd5b736e921f20d4b7365c06c6f9c5dd4469c781
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
(cherry picked from qtbase/ae4243df1e53b0aaeada708f6fa7979a0f0d216a)

8 years agoFix a crash when reparenting widgets on Windows.
Friedemann Kleint [Mon, 10 Mar 2014 08:10:21 +0000 (09:10 +0100)]
Fix a crash when reparenting widgets on Windows.

Introduced by a9edbeddafe5d8866192de44f4028d07bd93013a .

Task-number: QTBUG-37346
Task-number: QTBUG-30276

Change-Id: I81e218839db50a88a8b149dd5481bfd0835284da
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
8 years agoFix recursive calling of QScriptProgram
Lars Knoll [Tue, 11 Mar 2014 08:18:17 +0000 (09:18 +0100)]
Fix recursive calling of QScriptProgram

The first time a QScriptProgram is evaluated, it gets compiled and
then executed. If the execution would somehow trigger another
evaluation of the script program, it would run into the compile
stage again (even though it already was compiled), and then trigger
and assertion in debug mode (or leak memory in release builds).

Backport of 08d9ef715265d33f4cf04693b0787fd75994dc42 from Qt 5.

Task-number: QTBUG-37317
Change-Id: I83e7efd5f238d021e200258826e2e4a9520c3a7d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
8 years agodo not use fileno calls in forked child
Joerg Bornemann [Thu, 6 Mar 2014 22:53:38 +0000 (23:53 +0100)]
do not use fileno calls in forked child

This fixes an issue that causes QProcess::start to silently fail on
OS X 10.9. Apparently, fileno(stdout) locks the handle on OS X 10.9.
It may happen that the parent process fflush()s stdout while the child
has just been forked. The stdout lock of the parent is never released
in the child and fileno(stdout) therefore locks forever.

According to the fork documentation on opengroup.org one may only call
async-signal-safe functions between fork and exec in the child. The
fileno() function does not appear in the list of async-signal-safe
functions. Also, fileno(stdout) and friends can be easily replaced by
the standard constants STDOUT_FILENO etc.

Done-with: Fawzi Mohamed <fawzi.mohamed@digia.com>
Task-number: QTBUG-37306

Change-Id: I2b1f5f47cc48a1ad020fb0493a955d2bc27aeb47
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from qtbase/b2216bbe06b8be2bef6d8bc2ffff1337f6d23358)

8 years agoAdd AArch64 detection support to JavaScriptCore.
Dmitry Shachnev [Sat, 1 Mar 2014 09:13:27 +0000 (13:13 +0400)]
Add AArch64 detection support to JavaScriptCore.

Cherry-picked from qtscript commit 2e049836ee16f4aedbe7ccc3335fc5.

Change-Id: I8d9fdeceb62f4de4eb9bd74ae45bb33a641ef5cc
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
8 years agoDoc: Update, and reduce duplication of, QThread-related info
Sze Howe Koh [Tue, 25 Feb 2014 08:23:48 +0000 (09:23 +0100)]
Doc: Update, and reduce duplication of, QThread-related info

Added/Changed:
- Move content from the Thread Basics overview to the QThread class ref
- Rephrase bits for clarity
- Use more links

Removed:
- (threads-basics.qdoc) Warning against moveToThread(this): This usage
  came about when people tried to add slots to a QThread subclass. This
  patch adds a warning against the root cause.
- (threads-basics.qdoc) The strategy for managing member variables:
  Sounds error-prone. Pushing results through signals is safer.
- (qthread.cpp) The note about GUI classes: Irrelevant to QThread,
  and it's already mentioned elsewhere.

This is a cherry-pick from a9d5627e6a7b82 in qtbase.git.

Change-Id: I491f64f998050daf0251abb2126bc9f7a198c17d
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
8 years agoDoc: Discuss the concept of thread affinity in more detail
Sze Howe Koh [Tue, 25 Feb 2014 08:17:08 +0000 (09:17 +0100)]
Doc: Discuss the concept of thread affinity in more detail

- Create a section dedicated to this concept, which is fundamental to
  signal/event handling
- Move relevant content from the very broad "Thread Basics" page to the
  QObject class ref
- Flesh out existing content, including distinguishing signals from
  events
- Address the common misconception that "member" = "child"; this has
  been encountered several times in the Qt Project forums

This is a cherry-pick from 3b45dfe6e6ff6c0626b in qtbase.git

Change-Id: If3b65f3da4e1ca414c7175c4e22bcdef38f45442
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
8 years agoFix compilation failure in configure.exe
Kai Koehne [Thu, 13 Mar 2014 10:12:50 +0000 (11:12 +0100)]
Fix compilation failure in configure.exe

Fix regression introduced in (incomplete) commit 95f256d21dd.

Change-Id: I319f214a38134b5b97164ec61b2ae482e6542b86
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoPrevent spurious SSL errors from local certificates.
Richard J. Moore [Sun, 16 Feb 2014 11:35:43 +0000 (11:35 +0000)]
Prevent spurious SSL errors from local certificates.

Qt since approximately 4.4 has set the verify callback on both the SSL
store and the SSL context. Only the latter is actually needed. This is
normally not a problem, but openssl prior to 1.0.2 uses the verify
code to find the intermediate certificates for any local certificate
that has been set which can lead to verification errors for the local
certificate to be emitted.

Backport of 7c8131763de9e70ca56f16635716e7e00559b5d1

Task-number: QTBUG-33228
Task-number: QTBUG-7200
Task-number: QTBUG-24234

Change-Id: I65db8b658df9ff86095381c7b87d690258f03c3a
Reviewed-by: Daniel Molkentin <daniel@molkentin.de>
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
8 years agotests: Mark tst_qdbus* tests as insignificant on OS X
Sergio Ahumada [Thu, 13 Mar 2014 15:27:44 +0000 (16:27 +0100)]
tests: Mark tst_qdbus* tests as insignificant on OS X

D-Bus libraries were recently added to OS X 10.7 making these
tests to be executed for first time.

Task-number: QTBUG-37469
(cherry-picked from qtbase commit 9f87c3663d49a0a4c5affe6119ce399a6d0f5e7a)
Change-Id: I7886614bcaab290c3d4fef94d93ee9ad7837a3ee
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoFix Mac Bearer when machine has no wifi
Frederik Gladhorn [Tue, 11 Mar 2014 15:17:16 +0000 (16:17 +0100)]
Fix Mac Bearer when machine has no wifi

This manifested itself for some continuous integration machine, all
regular macs have wireless. In case there is no wifi, we would never
emit updateCompleted().

Change-Id: I81dce65cdbb0091944c4e79fdb5f2b7f5f70de88
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Simo Fält <simo.falt@digia.com>
8 years agoFix building of WebKit's JSC for earlier versions of gcc on Mac
Andy Shaw [Fri, 28 Feb 2014 10:52:35 +0000 (11:52 +0100)]
Fix building of WebKit's JSC for earlier versions of gcc on Mac

Since building for Carbon typically uses older versions of gcc on older
versions of Mac, then we need to revert
e3c44790065894f4e7f98ab097fce22c5bcbbd0a partially in order to fix this.
Since the original code was just a cleanup then this is safe to do so.

Change-Id: Ic662841f53660b763af2bc71cb9b4684fe614063
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
8 years agoFix network tests relying on troll.no
Frederik Gladhorn [Tue, 11 Mar 2014 13:13:53 +0000 (14:13 +0100)]
Fix network tests relying on troll.no

Replacing old troll.no domain with qt-project.org domain. Using troll.no
doesn't work anymore.

Cherry-picked from e5785d6322051ba96b1a4a97963a64c1aabbc027 in qtbase

Change-Id: Ib849205e3c8d254e4b0dfc8ed1c396259122481a
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoQt 3 Support: Prevent double deletion of QObjectPrivate::threadData in QSettings.
Friedemann Kleint [Tue, 25 Feb 2014 09:58:44 +0000 (10:58 +0100)]
Qt 3 Support: Prevent double deletion of QObjectPrivate::threadData in QSettings.

Task-number: QTBUG-36908

Change-Id: I8f9f86f20bd8bb479c2637f6c276e4e2593ecef9
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
8 years agoFix building of JSC for earlier versions of gcc on Mac
Andy Shaw [Tue, 25 Feb 2014 13:02:11 +0000 (14:02 +0100)]
Fix building of JSC for earlier versions of gcc on Mac

Since building for Carbon typically uses older versions of gcc on older
versions of Mac, then we need to revert
0de22e80ac645afc3793419300d6271d95809196 partially in order to fix this.
Since the original code was just a cleanup then this is safe to do so.

Change-Id: I5dd8fe99704ffac66ac3384b62849fa8162ca82d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
8 years agoWebbrowser example: Fix crash due to deprecated code.
Friedemann Kleint [Thu, 20 Feb 2014 09:24:22 +0000 (10:24 +0100)]
Webbrowser example: Fix crash due to deprecated code.

The example uses a Qt Designer form with widgets on a QToolBar
imported from Qt 3 which is not supported in Qt 4 and later.

In the code generated by uic, a QLabel is constructed passing
the toolbar as parent and added to the toolbar using
QToolBar::addWidget() which then causes a crash in Qt 4.

Move the widgets from the form into the class to avoid this.

Task-number: QTBUG-36948

Change-Id: Ia4af871ce99faf555bebc6ebde19bcae0de4d29e
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
(cherry picked from qtactiveqt/2e44efa5056355ac2c069ad2bd8a8ba6562f3eb6)

8 years agofix PlatformToolSet tag location in vcxproj files
Joerg Bornemann [Wed, 29 May 2013 10:54:15 +0000 (12:54 +0200)]
fix PlatformToolSet tag location in vcxproj files

The PlatformToolSet tag belongs into the PropertyGroup with the label
"Configuration". The former location in an anonymous PropertyGroup
tricked Visual Studio into displaying the right PlatformToolSet but
using its default value. If VS 2010 and VS 2012 are freshly installed
on the same machine, the default toolset for VS 2012 is VS 2010.

Task-number: QTBUG-30822

Change-Id: If00a532e92b0812c552b1cac52ff77a1e7039146
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
(cherry picked from commit 853a0b764e08d5f910072b6f3fd3ff3f9dc5c0c4)

8 years agoEnsure correct codec is used for Sources and Forms view.
Mitch Curtis [Tue, 18 Feb 2014 14:48:16 +0000 (15:48 +0100)]
Ensure correct codec is used for Sources and Forms view.

6626e5f41712723405c110a4f11ad650116f7523 did it on the wrong line.

This problem does not exist in Qt 5.

Change-Id: Ia39bc69b3f5ad58d28994ef3cae00242a8d0adbb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Titta Heikkala <titta.heikkala@digia.com>
8 years agoAdd MinGW-builds gcc 4.8.2 as Tier 2 platform
Kai Koehne [Tue, 18 Feb 2014 11:05:19 +0000 (12:05 +0100)]
Add MinGW-builds gcc 4.8.2 as Tier 2 platform

Since we now ship an installer with it it certainly qualifies
as Tier 2 (if not even Tier 1...)

This change does not apply to Qt 5.

Change-Id: I2cb5068867e46a42fb52c7cfdb365aa99937bb04
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
8 years agoMac: Fix file dialog filters when filter doesn't start with '*'
Eike Ziller [Thu, 13 Feb 2014 14:09:18 +0000 (15:09 +0100)]
Mac: Fix file dialog filters when filter doesn't start with '*'

Task-number: QTBUG-17326

Change-Id: Ie32f2807e64aa9c90b2e7d75adcd2aef67649225
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
8 years agofix crash when using GTK 2.14 function in old gtk
Andrey Volkov [Thu, 13 Feb 2014 10:47:38 +0000 (14:47 +0400)]
fix crash when using GTK 2.14 function in old gtk

This is additional fix for bug 23569.
Previous fix (SHA1 7fcf1cf674d09d9dd1d41e2913252017f1d599ca) is not enough.
QGtkStyle was still crashing with old gtk (< 2.14)
in drawComplexControl () function.
Bug was reproducible on CentOS 5.x and Red Hat 5.x.

Current patch makes the same check as in commit mentioned but in another
line of code.

Task-number: QTBUG-23569

Change-Id: I261b61bc93ccaada879ed02ad4d0bef62935335b
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Harri Porten <porten@froglogic.com>
(cherry picked from qtbase/7df3321f934e5bd618e2ad00bf801f2b7edd31df)

8 years agoQDeclarativeTypeLoader doesn't close processed QNetworkReplies
Frantisek Vacek [Mon, 10 Feb 2014 10:12:05 +0000 (11:12 +0100)]
QDeclarativeTypeLoader doesn't close processed QNetworkReplies

backport of Qt5 patch https://codereview.qt-project.org/#change,76825

This bug causes that Cascades QML application cannot open more than
system ulimit defined number of different asset:///*.qml files.

The realFile is ordinary closed in the ~QNetworkReplyFileImpl(),
the QDeclarativeTypeLoader::networkReplyFinished() calls
reply->deleteLater(). There are tricky situations when event-loop is
not entered and too many read already files are waiting for close.

This patch close() file when all the data is read. It can be done
this way since the QNetworkReplyFileImplnetworkreply is a sequential
device.

For more info, please, read comments on QTBUG-36032

cherry-pick from: qtbase cc88e6e92c806def34bce8cdcab275934ab646bf

Task-number: QTBUG-36032
Change-Id: I896cf9a89c541d743db1ccc11ab853219d844884
Reviewed-by: Richard J. Moore <rich@kde.org>
8 years agoFix the Carbon build
Andy Shaw [Mon, 10 Feb 2014 19:54:25 +0000 (20:54 +0100)]
Fix the Carbon build

The function does not exist when building for Carbon with the 10.5 SDK
so since this means the function will effectively do nothing, so we
just return false in this case.

Change-Id: If41762a055ebeccfcfce751e164b6a6e7e1db437
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
8 years agoRemove incorrect check for mingw 64 bit
Kai Koehne [Fri, 7 Feb 2014 11:42:54 +0000 (12:42 +0100)]
Remove incorrect check for mingw 64 bit

MinGW-w64 has '64' too, but isn't necessarily a 64 bit build ...
But the variable wasn't used anyway, so we can as well just remove
the check.

Change-Id: Ifba3ce344c5dc5e692f105bc99081ae4c69c779c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoFix detection of mingw gcc >=4.6
Kai Koehne [Fri, 7 Feb 2014 11:37:35 +0000 (12:37 +0100)]
Fix detection of mingw gcc >=4.6

Make sure that the version check works for gcc e.g. from mingw-builds,
which contains spaces in the version info, e.g.

g++ (i686-posix-dwarf, Built by MinGW-W64 project) 4.8.2

In Qt 5, support for MinGW-gcc versions older than 4.6 was dropped.

Change-Id: Idac5fb3a8cd01200558032ea1bd997e30f0e8b8b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoEnsure the webftp example works with newer versions of webkit.
Richard J. Moore [Sat, 8 Feb 2014 15:37:56 +0000 (15:37 +0000)]
Ensure the webftp example works with newer versions of webkit.

The code currently has a bug that it will return the incorrect number
for bytesAvailable() since it doesn't take account of the QIODevice
buffer. This fails when peek() is called (which is used by newer
webkits). See QTBUG-27469 for an example of the problem.

Note this example does not exist in qt5 so this is not a backport.

Change-Id: Ic61248d0f36db6a6a65d0c48a8f40346dc7c3cb6
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
8 years agoFix compile for Carbon
Andy Shaw [Fri, 7 Feb 2014 08:44:12 +0000 (09:44 +0100)]
Fix compile for Carbon

Protect the usage of qt_mac_loadMenuNib so it is only used on Cocoa as
this call is not used in Carbon code.

Change-Id: I93b9b513dce934680e1d5e1fb26bf2a64e25c764
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
8 years agocorrectly resolve INCLUDEPATH relative to current project
Oswald Buddenhagen [Tue, 8 Oct 2013 15:43:32 +0000 (17:43 +0200)]
correctly resolve INCLUDEPATH relative to current project

Task-number: QTBUG-24587
Change-Id: I1384403e5c5e3313649fa4abb98e7578cae4677b
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from qttools/92020773c1739feb4dc240827271720f615431d0)

8 years agofix strings from #included sources not being collected
Oswald Buddenhagen [Tue, 6 Aug 2013 13:11:37 +0000 (15:11 +0200)]
fix strings from #included sources not being collected

Task-number: QTBUG-27974
Change-Id: I30edae2db5449605984a118458b1ccce7ad67eb1
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from qttools/bcaa8575352ad16e1f6020436e1a3f450eefd53e)

8 years agoAdded Basque translation
Xabier Aramendi [Mon, 29 Jul 2013 09:00:18 +0000 (11:00 +0200)]
Added Basque translation

Change-Id: Id580c16b6d0ea6249c4f7359d2464b34a3e4480e
Reviewed-by: Xabier Aramendi <azpidatziak@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoFix the name of the arguments of qAtan2 to match std::atan2
Thiago Macieira [Fri, 31 Aug 2012 09:53:34 +0000 (11:53 +0200)]
Fix the name of the arguments of qAtan2 to match std::atan2

There is no change in functionality, just swapping of the names x and y.
The std::atan2 function uses (y, x) in that order, so we should too.

Task-number: QTBUG-27090
Change-Id: I7d4597a6c6909f574c517033f5d49fe17b7a7ead
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
(cherry picked from qtbase/9aa67cf0c48ff8e9e73fc19c4dcd950961b5ad54)
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoWin: Fixed assert in QKeyMapperPrivate::possibleKeys
Oliver Wolff [Thu, 30 Jan 2014 13:23:01 +0000 (14:23 +0100)]
Win: Fixed assert in QKeyMapperPrivate::possibleKeys

Trying to detect key combinations for events that have an invalid
virtual key will fail in any case and does not make sense.

Task-number: QTBUG-36061
Change-Id: Ia30cb7bf6c7bae06eb84c23b356a53a2eb6e86aa
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoDontUseNativeDialog is not just for the Mac color dialog
Shawn Rutledge [Tue, 4 Feb 2014 15:10:39 +0000 (16:10 +0100)]
DontUseNativeDialog is not just for the Mac color dialog

Task-number: QTBUG-14341
Change-Id: Id2e8df9277186427370fa2a89643995d79812704
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
8 years agoFix problem with QNetworkAddressEntry returning a invalid netmask.
Christian Strømme [Wed, 27 Nov 2013 14:04:09 +0000 (15:04 +0100)]
Fix problem with QNetworkAddressEntry returning a invalid netmask.

The ip address should be set before the netmask. The reason for this is
that QNetworkAddressEntry::setNetmask() compares the protocol of the
netmask and the ip, if they don't match the netmask won't be set.

Task-number: QTBUG-33911
Change-Id: Ic344b3653c5dfdc5df912dee16e4dbe069d57d24
(cherry-picked from qtbase commit e82951611c6d965cc8ef9cbf4ee7fbccf615bb3f)
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
8 years agoWindows: Do not try to update keymap on WM_IME_CHAR messages
Oliver Wolff [Mon, 13 Jan 2014 10:12:34 +0000 (11:12 +0100)]
Windows: Do not try to update keymap on WM_IME_CHAR messages

Task-number: QTBUG-35806

Change-Id: Ie1082353155aa7ee61f49f2fbcbfdb01d57e797c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
(cherry picked from commit 0c09d2ccb9b46138a908950d65a49aa58dd55062)

8 years agoqmlplugindump is missing --noinstantiate option on Qt 4.8
Daniel Pesch [Wed, 22 Jan 2014 21:18:59 +0000 (22:18 +0100)]
qmlplugindump is missing --noinstantiate option on Qt 4.8

Backport of --noinstantiate option from Qt 5.0.

Task-number: QTBUG-36380
Change-Id: I80694aa94c5d5cceaf2751d1e3efc80e4f316709
Signed-off-by: Daniel Pesch <dpesch@blackberry.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
8 years agowin32-msvc2013: force synchronous writes to .pdb files
Joerg Bornemann [Thu, 24 Oct 2013 08:34:32 +0000 (10:34 +0200)]
win32-msvc2013: force synchronous writes to .pdb files

Synchronize .pdb file writing, otherwise parallel builds
will fail, when different compiler instances try to access
the same .pdb file.

See also
http://msdn.microsoft.com/en-us/library/vstudio/dn502518.aspx

Task-number: QTBUG-36398

Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from commit 59ae8323b7a57cc04d19fc1f552aeaeda9dad3f7)

Change-Id: I7263b875a1015724bae6c37fb540d52507a1c7da
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoCorrect algorithm for digest auth when using the CONNECT verb
Bradley Buda [Thu, 11 Jul 2013 00:29:22 +0000 (17:29 -0700)]
Correct algorithm for digest auth when using the CONNECT verb

QHttpSocketEngine fails to authenticate to an HTTP proxy that is using
Digest authentication and the CONNECT method (i.e. when you are
tunneling TLS over HTTP). The bug is due to a bad parameter being
passed to QAuthenticatorPrivate::calculateResponse - the requestMethod
parameter is passed in as "CONNECT " instead of "CONNECT" (note the
trailing space).

Because an MD5 hash is derived from this method when using the
qop="auth" flavor of Digest auth, the hash does not match the expected
value and authentication always fails in this configuration.

(cherry picked from commit 5cab14b8a1dfbb03e22b10af385fb90900a9f280)

Change-Id: Ief025ada714e03d96a316116f6b9f1711ab2a7f7
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
8 years agoQWindowVistaStyle: Always initialize text color of menu items.
Friedemann Kleint [Tue, 21 Jan 2014 10:17:50 +0000 (11:17 +0100)]
QWindowVistaStyle: Always initialize text color of menu items.

[ChangeLog][QtWidgets][QMenu][Windows] Correctly use text color set by style sheet for menu items.

Task-number: QTBUG-36142

Change-Id: I142f2fd82164771b45bf599a6afa1121fcfd2187
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
(cherry picked from qtbase/b152b425f74788b2f2845fb7d1a5032d86b8746d)

8 years agoQWindowsVistaStyle: Fixed position of menu gutter when using a custom widget action.
Friedemann Kleint [Wed, 22 Jan 2014 09:13:17 +0000 (10:13 +0100)]
QWindowsVistaStyle: Fixed position of menu gutter when using a custom widget action.

The gutter position was hardcoded to 28 which fits when drawing
on the QMenu with a left margin of 3. It became offset when drawing
on a custom widget with no margin. Calculate position relative
to margin for left to right.

[ChangeLog][QtWidgets][QMenu][Windows] Fixed position of menu gutter when using a custom widget action.

Task-number: QTBUG-36218

Change-Id: Ibb34a9fba2bab7257482b80d2e51e76a9755345c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
(cherry picked from qtbase/a5c288ea5675a382edf0b3ecae42f461a22a7303)

8 years agorebuild configure.exe
Joerg Bornemann [Mon, 20 Jan 2014 13:48:43 +0000 (14:48 +0100)]
rebuild configure.exe

Change-Id: I3e1cdb9462921a49d37637c8c0ce788208ee200c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoadd support for Visual Studio 2013
Joerg Bornemann [Tue, 2 Jul 2013 11:48:08 +0000 (13:48 +0200)]
add support for Visual Studio 2013

Add mkspec win32-msvc2013 and make VS 2013 known to configure and
qmake.

Task-number: QTBUG-36135

Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
(cherry picked from commit f1cdd4b2976706c6d9c3166a75afff6ec5856f3d)

Change-Id: I6a6d1ce0de0ba85e1b711976c7340893c58e29ae
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoMake configure.exe only detect each compiler once
Bradley T. Hughes [Mon, 27 Feb 2012 10:21:10 +0000 (11:21 +0100)]
Make configure.exe only detect each compiler once

When reading the registry on a 64 bit Windows, the same compiler
can be detected twice, breaking the -platform detection even when
only one compiler is in the path.
Fix this by taking advantage of the CompilerInfo struct ordering
and ignore detection of the same compiler.

Change-Id: I583230520d2e0859196f9d7c8af31adbb981a6ca
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
(cherry picked from commit fa5cf01e7468e53508b15726625fd681892119a4)
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoQWizard: Fix frame when using Vista style/MSVC2012
Friedemann Kleint [Thu, 16 Jan 2014 16:22:40 +0000 (17:22 +0100)]
QWizard: Fix frame when using Vista style/MSVC2012

Work around GetSystemMetrics() returning the wrong value using
MSVC2012 and later. The special handling of Windows 8 and later
is then no longer required.

[ChangeLog][QtWidgets][QWizard]  Fixed frame when using Vista style/MSVC2012.

Task-number: QTBUG-36192

Change-Id: I39c2ab70a266f12cd65fa740b10b86edffa60417
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
(cherry picked from qtbase/852308114ff901b86cca99268f498fc1d56b622e)

8 years agoCorrect wordwrapped text handling in QListView icon mode
Samuel Gaist [Fri, 22 Nov 2013 23:15:30 +0000 (00:15 +0100)]
Correct wordwrapped text handling in QListView icon mode

Currently a QListView with wordwrapping activated will wrap the text
only to the width of the icon even if the grid size is bigger. With this
patch the option rect is now updated to match the grid size if valid
and the style uses it to determine the correct size when wrapping

[ChangeLog][QtWidgets][QTBUG-4714] Use the grid size for wordwrapping
when available in icon mode
Task-number: QTBUG-4714
Change-Id: I2cb63809d3ee8bd262f38bc11de91df9ff5cf237
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
(cherry picked from qtbase/a761be2fb2191215426f904cb03df0e966214531)

8 years agoAvoid floating point exceptions in rasterizeLine.
Gunnar Sletta [Tue, 11 Jun 2013 09:09:34 +0000 (11:09 +0200)]
Avoid floating point exceptions in rasterizeLine.

Task-number: QTBUG-16757

Change-Id: I3ef988f1e039c12529d62197d85a62f201e4ae12
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
(cherry picked from qtbase/85b4f0d2d3ffd326548ca8f0e15ac27f5fd8d77d)
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
8 years agoMitigate performance regression in isExpandedEntityValueTooLarge().
Mitch Curtis [Fri, 10 Jan 2014 10:19:08 +0000 (11:19 +0100)]
Mitigate performance regression in isExpandedEntityValueTooLarge().

512a1ce0698d370c313bb561bbf078935fa0342e fixed a security issue [1],
but also caused a large performance regression. This patch improves
the performance from ~196 seconds to ~.23 seconds for 1000 entities,
using the benchmark in the bug report:

"0": 0 msecs per iteration (total: 0, iterations: 1)
"250": 2,952 msecs per iteration (total: 2,952, iterations: 1)
"500": 23,418 msecs per iteration (total: 23,418, iterations: 1)
"750": 79,913 msecs per iteration (total: 79,913, iterations: 1)
"1000": 196,335 msecs per iteration (total: 196,335, iterations: 1)

"0": 0 msecs per iteration (total: 0, iterations: 1)
"250": 16 msecs per iteration (total: 16, iterations: 1)
"500": 59 msecs per iteration (total: 59, iterations: 1)
"750": 132 msecs per iteration (total: 132, iterations: 1)
"1000": 232 msecs per iteration (total: 232, iterations: 1)

This is a cherry-pick of 62c4e288a11769bde45c9c74d731ed8628303f19.

[1] http://lists.qt-project.org/pipermail/announce/2013-December/000036.html

Task-number: QTBUG-35919

Change-Id: Ibc2fc94dc0d88b227b9510e15bac9c07f4600591
Reviewed-by: Richard J. Moore <rich@kde.org>
8 years agoFixed another assert in qwindowskeymapper
Oliver Wolff [Mon, 16 Dec 2013 13:56:59 +0000 (14:56 +0100)]
Fixed another assert in qwindowskeymapper

When we get a WM_CHAR message we do not need to add anything to the key
map as these messages already contain the character code in question.

Task-number: QTBUG-35532

Change-Id: If73993cd873b7c616876b9ba52ceba6b27a6a7b1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
(cherry picked from commit 8e2f95e5a2ebc54c600d1db416b1dd84e433d115)

8 years agoqthread_win.cpp: Fix warnings when waiting for adopted threads.
Friedemann Kleint [Mon, 16 Dec 2013 16:23:00 +0000 (17:23 +0100)]
qthread_win.cpp: Fix warnings when waiting for adopted threads.

Task-number: QTBUG-35591

Change-Id: I63169bd8a9758a7dad33d4231d3d6c9d71c7e252
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from qtbase/d1f8a5641615eb83bb36b4ada5913531d0da24f1)
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
8 years agoFix Japanese translation
Takumi Asaki [Mon, 6 Jan 2014 04:37:18 +0000 (13:37 +0900)]
Fix Japanese translation

Qt 5's translation is already fixed.

Change-Id: Ief4aa4fbea1f076c77e53f0f5b5ac00bfb1aa9f1
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoCocoa: fix a typo for F9 in key mapping
Liang Qi [Thu, 19 Dec 2013 07:17:11 +0000 (08:17 +0100)]
Cocoa: fix a typo for F9 in key mapping

Task-number: QTBUG-34820
Change-Id: I181f565a0b4f188f83cc821a019cf3781954cb02
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
8 years agoFixed various crashes in connection point enumerators
sbk [Wed, 27 Nov 2013 09:02:55 +0000 (01:02 -0800)]
Fixed various crashes in connection point enumerators

Task-number: QTBUG-35136
Task-number: QTBUG-35262
Task-number: QTBUG-35263
Task-number: QTBUG-35264
Task-number: QTBUG-35265
Task-number: QTBUG-35266
Task-number: QTBUG-35267
Task-number: QTBUG-35283
Task-number: QTBUG-35284
Task-number: QTBUG-35285
Task-number: QTBUG-35286

Change-Id: Icc51137fa52dd9a10b4c3ce1ca7fe6c56d556b7a
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
(cherry picked from qtactiveqt/0d29579baffd4f31a3ec39590117f4fee821694d)

8 years agoQSpinBox: fix cursor jumping around when pressing up/down keys
Pekka Vuorela [Wed, 5 Oct 2011 11:39:57 +0000 (14:39 +0300)]
QSpinBox: fix cursor jumping around when pressing up/down keys

Backport of:
  Make QLineEdit unit test pass again

  Widget failed to update cursor position if selection remained the same, but
  changed direction, and did not emit selectionChanged if change resulted
  from input method event.

Bisected to fix
Task-number: QTBUG-15116
a regression introduced in fb7d86cf.

Change-Id: I6a4ae48d41efa5e126980749f89982f92e3ec499
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
(cherry picked from qtbase/1189ebff320b8dd03637947c92df6e3ef84a3c06)
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoSSL: blacklist ANSSI intermediate certificate
Peter Hartmann [Tue, 10 Dec 2013 08:21:43 +0000 (09:21 +0100)]
SSL: blacklist ANSSI intermediate certificate

... because it was used to operate a man-in-the-middle proxy.

Task-number: QTBUG-35474
(backported from commit 7eecbb07184bc8b2c5e7645af2805ba0a2488082)

Change-Id: Ibf15faf0b89fa29a8ca9d9dfeeeab120dd644526
Reviewed-by: Richard J. Moore <rich@kde.org>
8 years agoCascade detection of SSE3 support and up
Thiago Macieira [Sun, 8 Dec 2013 19:58:44 +0000 (11:58 -0800)]
Cascade detection of SSE3 support and up

If SSE2 isn't supported, then SSE3 can't be either. Onwards and upwards
for SSSE3, SSE4.1, SSE4.2 and AVX. The test for AVX2 was already there.

(cherry-picked with modification from qtbase commit
a071ba629b89dbbe458d0865a0c4ebc3f92d3524; modified because Qt 4 checks
for SSE and MMX)

Task-number: QTBUG-24773
Change-Id: I005258db52d8abcd407a99b8ebcc23cdea8e3d9f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoClean up a partially scrolled QRollEffect widget
Miikka Heikkinen [Thu, 14 Jun 2012 10:05:34 +0000 (13:05 +0300)]
Clean up a partially scrolled QRollEffect widget

If the associated widget pointer got zeroed while QRollEffect was
scrolling, the partially scrolled QRollEffect widget remained on
screen indefinitely as 'done' was never set to true.

Change-Id: If1567ea740e81b5501137d10db471ca97d295ed8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
(cherry picked from qtbase/486601fbc4a7e9eaeb5df5bb3966c3aec31d8d65)
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoWebKit: Remove video support on OS X
Brian Jensen [Tue, 3 Dec 2013 12:36:02 +0000 (13:36 +0100)]
WebKit: Remove video support on OS X

WebKit video support on OS X currently relies on QTKit to function
properly. This is problematic because QTKit video support in WebKit
requires linking against the WebKitSystemInterface specific to each OS X
release, thus preventing the same set of Qt binaries from interoprating
with several Mac Releases. As a workaround video support is disabled.

Back ported from: http://trac.webkit.org/changeset/151546

Task-number: QTBUG-32237

Change-Id: I780062ce5971960dcad7b51e6226dcf7cd7c907f
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
8 years agoFixed rounding errors in QtQuick1 to int conversions
Janne Koskinen [Wed, 30 Oct 2013 10:08:36 +0000 (12:08 +0200)]
Fixed rounding errors in QtQuick1 to int conversions

qRound introduced errors when qreal is single precision. Added
double signature for qround so that string and int don't lose precision
in conversion.

Task-number: QTBUG-33625

Change-Id: I58582f57d5cd68fcad3fe9efb5fea5935f61b9e3
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
8 years agoqt webkit: add support for MIPS64 platforms
Vicente Olivert Riera [Wed, 4 Dec 2013 17:52:49 +0000 (17:52 +0000)]
qt webkit: add support for MIPS64 platforms

qt5webkit is not fixed and this patch cannont be applied to qt5webkit

Task-number: QTBUG-35394

Change-Id: Ie2d332345741989a0b4ef93306ca36b42e888c11
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
8 years agoDon't use Standard Library routines in qthread_p.h
Thiago Macieira [Thu, 5 Dec 2013 20:51:53 +0000 (12:51 -0800)]
Don't use Standard Library routines in qthread_p.h

Just write the for loops by hand so we don't need to use the Standard
Library. That's necessary to support a -no-stl build.

This patch is not necessary in Qt 5 since Qt 5 does not have -no-stl.

Task-number: QTBUG-35424
Change-Id: Id449d807eaf7350f1a668ef16d356a9e236c6058
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
8 years agoCompletely bootstrap idc.
Friedemann Kleint [Tue, 3 Dec 2013 16:23:31 +0000 (18:23 +0200)]
Completely bootstrap idc.

idc dynamically loads libraries depending on QtCore.dll
whose static instances can then cause clashes.

Task-number: QTBUG-35275

Change-Id: I48bb9c4b4ab33b1909d650458c0351c008b46ac0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
(cherry picked from qtactiveqt/ab3e8e80fbd81a38039c713189b0422972e0963e)

8 years agoUse qt_mac_effectiveview_for for setFocus_sys
Samuel Gaist [Fri, 8 Nov 2013 21:50:44 +0000 (22:50 +0100)]
Use qt_mac_effectiveview_for for setFocus_sys

Currently setFocus_sys use qt_mac_nativeview_for to set the focus which
triggers a bug rerouting the key events through NSMenu rather that
directly to the correct widget. Get the effective id returns the
correct widget. This changeset applies the patch proposed in the bug
report

Task-number: QTBUG-34371
Change-Id: I0831f41ca409ff309954bb45a50975dd4eb1406a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
8 years agoEnable building with clang / libc++ on OS X 10.9 Mavericks
Brian Jensen [Mon, 11 Nov 2013 20:13:14 +0000 (21:13 +0100)]
Enable building with clang / libc++ on OS X 10.9 Mavericks

A minimalistic change to enable building with clang / libc++ on OS X
10.9 Mavericks. The configure script now avoids overriding build
settings when using clang/libc++. Added a new build configuration with
settings specific to clang/libc++ on OS X.

Task-number: QTBUG-34652

Change-Id: Iaedaff7c06e9818a5f2ee0d6db93fbe3b2e65e28
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
8 years agoQBBSystemLocale: Do not set fixed buffer size when reading pps objects
El Mehdi Fekari [Wed, 4 Dec 2013 15:58:25 +0000 (16:58 +0100)]
QBBSystemLocale: Do not set fixed buffer size when reading pps objects

Set dynamically the buffer size when reading pps objects since a pps file
size is not always fix.

Cherry-picked: qtbase/edf29a9aa93660ac8e4927db7fef2b5d925e9b59

Change-Id: Id55df6a474b6b79d96e3459e807f0bbfeacbf0cb
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
8 years agoRespect the custom paper size settings on Mac
Andy Shaw [Tue, 3 Dec 2013 22:11:35 +0000 (23:11 +0100)]
Respect the custom paper size settings on Mac

When the user added a custom paper size then it would be silently
ignored when printing on Mac. This now ensures that it is respected when
appropriate.

Manual cherry-pick from Qt 5: 26a0a3ed85008c3a0edae125fca48c7c36a7437f

[ChangeLog][Platform Specific Changes][OS X][QtPrintSupport] Respect
the custom paper size settings when printing.

Task-number: QTBUG-34700
Change-Id: If2ff9b704a636c94510f826d300e53af99c8e7ab
Reviewed-by: John Layt <jlayt@kde.org>
8 years agoqtscript: Add support for MIPS64 platforms
Vicente Olivert Riera [Mon, 2 Dec 2013 16:33:48 +0000 (16:33 +0000)]
qtscript: Add support for MIPS64 platforms

This fix do not apply to Qt 5 because qtscript has been already patched
in 408847dcdfe1d407cd85616e8f595fb5ea25ca46

Task-number: QTBUG-35030

Change-Id: I0eb71aa875afef9eee15a203b9bd24f5395a3463
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: YunQiang Su <wzssyqa@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
8 years agoCorrect WebKit build path settings
Benjamin Seppke [Thu, 21 Nov 2013 14:49:48 +0000 (15:49 +0100)]
Correct WebKit build path settings

Change the WebKit build path settings to point to the correct install
location.

Change-Id: Idd350a9d873be454d88a01accf3d9fe590cc0103
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoUpdate Arabic translation
Ahmed Saidi [Sun, 23 Dec 2012 11:04:37 +0000 (11:04 +0000)]
Update Arabic translation

Change-Id: I8aa6df64a8454a5e916e038d6a8bfa6aef7b6de4
Reviewed-by: Ahmed Saidi <justroftest@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
8 years agoBackported fix for WebKit libc++ support on OS X Mavricks
Brian Jensen [Mon, 11 Nov 2013 11:00:28 +0000 (12:00 +0100)]
Backported fix for WebKit libc++ support on OS X Mavricks

As of OS X 10.9 Mavericks libc++ is the default standard library
implementation. This fix is necessary for building WebKit on OS X
Mavericks when using libc++. Upstream Change:
http://trac.webkit.org/changeset/107489

Task-number: QTBUG-34652

Change-Id: Ieb30c115b85045adc3e82ee039c541c973b72a3c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
8 years agoWebKit Nullptr type fixes when using libc++
Brian Jensen [Tue, 5 Nov 2013 15:42:43 +0000 (16:42 +0100)]
WebKit Nullptr type fixes when using libc++

These changes correct the Nullptr type handling for libc++ based system.

Task-number: QTBUG-34652

Change-Id: Ied51c8683cce86beb24ed2fef70e99bb4dfc15e5
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
8 years agoFix WebKit TimerHeap implementaiton to work with more standard libraries
Darin Adler [Tue, 5 Nov 2013 15:47:39 +0000 (16:47 +0100)]
Fix WebKit TimerHeap implementaiton to work with more standard libraries

This is necessary to get WebKit to build with more with more STL
variants, including libc++. It is based on the upstream WebKit change:
http://trac.webkit.org/changeset/92556

Task-number: QTBUG-34652

Change-Id: I31ad9a7af8b1fb21d4186857f63a9fdf58429042
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
8 years agoQNX: Make use of _readdir64_r
Bernd Weimer [Tue, 26 Nov 2013 10:22:37 +0000 (11:22 +0100)]
QNX: Make use of _readdir64_r

Latest QNX versions support _readdir64_r. It will be used by
QFileSystemIterator now, when available to support large file
systems.

Backport from qtbase/5d8c05baf478d8eb8cb7ce827caa2c1103f5fa3f

Change-Id: I264cc39a0cae6e84ed0db2e10df5ea22c8ae3df4
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
8 years agoKeep the copied files as writable
Thiago Macieira [Wed, 27 Nov 2013 20:14:59 +0000 (12:14 -0800)]
Keep the copied files as writable

Mac's strip tool doesn't work if the file is read-only. Some of the
libraries we copy might be read-only (like those installed by
HomeBrew) and that would cause stripping to fail.

(cherry-picked from qttools commit f82499e6508975188b38cb396280c901e4274cd7)
Change-Id: Ie8caa853a26794ec97ec84354d9f7bb142cce993
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
8 years agoRecognize newer libmng versions in config test
aavit [Fri, 22 Nov 2013 14:49:44 +0000 (15:49 +0100)]
Recognize newer libmng versions in config test

libmng 2.0.x has been released and is compatible and usable, but since
it no longer provides a VERSION_MAJOR macro, the config test would fail.

Task-number: QTBUG-34894
Change-Id: I36f6ed9d69dbae88feb1b88ce099bf36c9283133
Reviewed-by: Liang Qi <liang.qi@digia.com>
(cherry picked from qtimageformats/9ae386653c321c8ddc10fad5ea88f32ebb3d3ffe)

8 years agoQPrintDialog - Fix Windows Current Page option selection
John Layt [Wed, 27 Nov 2013 09:24:51 +0000 (10:24 +0100)]
QPrintDialog - Fix Windows Current Page option selection

In the Windows print dialog default the print range radio button
selection to the QPrinter set value, but only if the option is enabled
in the dialog.

Task-number: QTBUG-32965

Change-Id: I1093ff9d55c0ec578fc2c112874662deb32e1b4d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
(cherry picked from qtbase/9927c1a2bbb372d0e557c58062e4ecda7a644aa1)

8 years agoUpdate 4.8.6 changelog
Gabriel de Dietrich [Mon, 25 Nov 2013 14:19:12 +0000 (15:19 +0100)]
Update 4.8.6 changelog

Change-Id: Ie5f65d9f8915d327aed03a1d7073782fb2c6fdbc
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
8 years agoCoreWLan: Fix potential unhandled exception assert
Gabriel de Dietrich [Mon, 25 Nov 2013 12:52:36 +0000 (13:52 +0100)]
CoreWLan: Fix potential unhandled exception assert

-[QNSListener notificationHandler:] was declared as not taking any parameter,
but used as taking a single NSNotification. This would lead to an 'unrecognized
selector' exception raised by Cocoa.

Task-number: QTBUG-26844
Change-Id: I723b4c89b0faf1fe156a3c96cb1dd3abfad8daa6
Reviewed-by: Liang Qi <liang.qi@digia.com>
8 years agoMac style: Fix selected tab text color on 10.6
Gabriel de Dietrich [Thu, 21 Nov 2013 12:26:29 +0000 (13:26 +0100)]
Mac style: Fix selected tab text color on 10.6

This is a regression introduced by a1eaf0169f041f599895fac90570df601559a526.

Task-number: QTBUG-34540
Change-Id: I3944a92f5119e0ec7c435b5b36ed4bc3d7361888
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
8 years agoFixed assert in Windows key handling
Oliver Wolff [Tue, 19 Nov 2013 11:47:03 +0000 (12:47 +0100)]
Fixed assert in Windows key handling

Certain key sequences (like press alt, press left, release left,
release alt) can cause an assert in qwindowskeymapper. This
behavior was introduced in change
I4f7709a90906b03f4504deea1ff5c361e9f94b3f (Fix virtual key
mapping on MS Windows). The place that seems to cause the new
behavior is changing the bitmask for obtaining the event's scancode.

With the changed bitmask releasing the alt key in the given
key sequence causes the WM_KEYUP event to trigger a WM_CHAR event
which should not happen there. To be honest I don't know how having
the extended bit inside the scancode fixes the behavior but it seems
to do and I could not find another place which might cause the
breakage.

Task-number: QTBUG-35005
Change-Id: Ia18c2681ea311196441a5cd15017e220ac095674
(cherry picked from commit d4c548ce5c0bd8a70c82ed082bc69fd41e9c47ed)
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Juan Luis Boya García <ntrrgc@gmail.com>
8 years agoFix bug in updatePossibleKeyCodes() with dead keys and modifiers
Juan Luis Boya García [Wed, 23 Oct 2013 10:34:02 +0000 (12:34 +0200)]
Fix bug in updatePossibleKeyCodes() with dead keys and modifiers

As it was until now, QWindowsKeyMapper::updatePossibleKeyCodes() tested
using ToUnicode for which characters produce a key with every possible
combination of modifiers.

Calling ToUnicode with a dead key is dangerous, because MS Windows keeps
it in the driver buffer, so if you call ToUnicode with acute key and
then you press a, you get an á.

To prevent this, updatePossibleKeyCodes() checked if the key that was
being tested was a dead key. If true, it inserted an space and then
repeated the key in order to reset the system internal buffers to the
same state they were before the call.

The problem with this is if the dead key is really two keys (like ^ or ´
in US International keyboard layout) and you press one of those keys
without the modifier to make it a dead key (i.e. 6 in US International):
Since updatePossibleKeyCodes() only tests for the key that was pressed
it gets 6 is not a dead key, and thus it does not execute the
workaround. Thus, the next time the user presses 'a' they get 'â'
instead because updatePossibleKeyCodes() set the dead key on the
keyboard buffer and did not run the workaround.

This patch makes updatePossibleKeyCodes() run the workaround if any
possible combination of modifiers with the key being examinated makes a
dead key.

Task-number: QTBUG-33591
Change-Id: I8c0b27586f7c62798986258b1b84aa90e4c5d64c
(cherry picked from commit b98a031b813a83374897b23f4f7710a238f2e7b6)
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Juan Luis Boya García <ntrrgc@gmail.com>
8 years agoFix virtual key mapping on MS Windows
Juan Luis Boya García [Wed, 16 Oct 2013 15:34:52 +0000 (17:34 +0200)]
Fix virtual key mapping on MS Windows

In order to map MS Windows virtual keys to Qt keys without messing with
dead keys now I use the built-in keyMap structure of QWindowsKeyMapper
and assert every cell in the keymap is properly updated.

In order to guarantee this even when the user changes the keyboard
layout, WndProc now manages the WM_INPUTLANGCHANGE message, which is
handled by QWindowsKeyMapper, resetting the layout structure.

I don't fully understand yet some things about QWindowsKeyMapper, i.e.
how QWindowsKeyMapper::updatePossibleKeyCodes workarounds the dead key
issue with ToAscii; but it seems to work fine in all the tests I've
done. Any further testing is highly appreciated, though.

[ChangeLog][[QtGui][Platform Specific Changes][Windows] Fixed virtual key
mapping on Windows.

Task-number: QTBUG-33409
Task-number: QTBUG-8764
Task-number: QTBUG-10032

Change-Id: I4f7709a90906b03f4504deea1ff5c361e9f94b3f
(cherry picked from commit f0d014a16b5c9b55245834459c46ea34d15d14be)
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoQThread: Fix link to snippet in documentation
Jonathan Liu [Fri, 22 Nov 2013 05:22:43 +0000 (16:22 +1100)]
QThread: Fix link to snippet in documentation

Change-Id: Ie27b3ae36dcf98cef4b612387aff448bc0421d29
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
8 years agoMultimedia: Fix MinGW-warning about assigning NULL to int-type.
Friedemann Kleint [Wed, 20 Nov 2013 14:04:16 +0000 (15:04 +0100)]
Multimedia: Fix MinGW-warning about assigning NULL to int-type.

Change-Id: I58fc7628845ed0733b79af5ab89c360ab8a12863
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
8 years agoFix signature of the waveInProc/waveOutProc callbacks.
Friedemann Kleint [Thu, 14 Feb 2013 10:43:18 +0000 (11:43 +0100)]
Fix signature of the waveInProc/waveOutProc callbacks.

Parameters are DWORD_PTR instead of DWORD, which did not matter
on 32bit but caused MinGW64-compiler warnings and potential
crashes on 64bit.

Change-Id: I840ae3ea7ea532746f73f20b3233cae842931d45
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
(cherry picked from qtmultimedia/699a5d75aab2de7e2c341be8533446597bee355e)
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
8 years agoQLocale: Fix infinite loop in error case
El Mehdi Fekari [Wed, 20 Nov 2013 13:43:38 +0000 (14:43 +0100)]
QLocale: Fix infinite loop in error case

QBBSystemLocaleData emits qwarnings when it fails to open or read a pps object.
If the user code installs a message handler that will invoke QLocale API again
(i.e QDate, QDateTime, ...) then this will cause an infinite loop, where the
QBBSystemLocaleData ctor() is calling itself.

This patch logs the QBBSystemLocale's warnings to stderr and
skips the Qt message handler.

Cherry-picked: qtbase/1e446fc99167a992b1a8342168b6254f43b097fe

Change-Id: Iff99973532e0cba752854e325d0cd987765547d9
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
8 years agoThreads: Fix mingw-gcc warning about 'cast to pointer from integer of different size'
Kai Koehne [Wed, 12 Sep 2012 13:30:59 +0000 (15:30 +0200)]
Threads: Fix mingw-gcc warning about 'cast to pointer from integer of different size'

Use reinterpret_cast to convert from DWORD to pointer.

Change-Id: I17a12940850aeb0bc27080725a18eb93fee72ff7
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
(cherry picked from qtbase/edfdaba696d94206794203f9621d7e3aa8e5ab26)
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
8 years agoQUiLoader/Designer: Fix gcc 4.8 warnings about unused typedefs.
Friedemann Kleint [Fri, 5 Apr 2013 12:51:49 +0000 (14:51 +0200)]
QUiLoader/Designer: Fix gcc 4.8 warnings about unused typedefs.

Change-Id: I792f3060c808ef860b31b47b3b00e5ac1991eedd
Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
(cherry picked from qttools/3455a96c6728873a3ba69585ebb27bf8e733c0f9)

8 years agoMake sure .qch file is opened read-only
Kai Koehne [Wed, 13 Nov 2013 15:33:51 +0000 (16:33 +0100)]
Make sure .qch file is opened read-only

So far qsqlite tried to open the file first read/write, and falling back
to read access only if this fails. This has resulted in excessively long
loading times e.g. on Windows XP.

Task-number: QTCREATORBUG-10697

(cherry-picked from commit 0bf84aa7873edd7bb411fabb94481b03d1501c68 in
qttools.git)

Change-Id: I94be15e2d7c5845bcadf6b32e54462a7c1bcb98a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoKernel: Fix gcc warning in qsharedmemory_win.cpp
Kai Koehne [Wed, 12 Sep 2012 13:43:09 +0000 (15:43 +0200)]
Kernel: Fix gcc warning in qsharedmemory_win.cpp

Fix gcc 4.7 'arning: converting 'false' to pointer type 'HANDLE {aka void*}' [-Wconversion-null]'

Change-Id: I28d890d5fd4975517a9329d68c9ef73f6fadf36c
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
(cherry picked from qtbase/baf8a2fbf710314096832b0ee5735ffdc8b24210)

8 years agoqsimd: Fix compilation with MinGW 64.
Friedemann Kleint [Mon, 18 Nov 2013 10:39:29 +0000 (12:39 +0200)]
qsimd: Fix compilation with MinGW 64.

Task-number: QTBUG-34856
Change-Id: Ie1dbeb5787e1a60aeaca585160319bbe0943e2cb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
8 years agoFix MinGW-warnings about narrowing/invalid conversions.
Friedemann Kleint [Mon, 18 Nov 2013 16:15:17 +0000 (18:15 +0200)]
Fix MinGW-warnings about narrowing/invalid conversions.

Change-Id: I9b49dd6d12a5e59c6f2674ab3c82a8a7ec583775
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
8 years agoMinGW: Fix warnings about assigned but not used variables.
Friedemann Kleint [Mon, 18 Nov 2013 16:11:26 +0000 (18:11 +0200)]
MinGW: Fix warnings about assigned but not used variables.

Change-Id: I114483273db0f9ffe0527b4a3e4cd881375a3448
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
8 years agoQObject: use per-thread storage for qFlagLocation()
Marc Mutz [Sat, 21 Sep 2013 15:42:33 +0000 (17:42 +0200)]
QObject: use per-thread storage for qFlagLocation()

qFlagLocation() uses a global char* array to transport source location
information from the connect() side to the metaobject side. The size
of the array is 2 (two), which just about suffices for a single connect()
statement.

Obviously, if more than one thread makes a (_any_) connection at the same
time, the data is useless and, worse, there's a data race.

The non-reentrancy of qFlagLocations() cannot and need not be fixed,
but use a per-thread flagged_locations array in QThreadData so threads
don't disturb each other.

Task-number: QTBUG-3680

Change-Id: If1797c60751f551694def69afee6fbe295bbe2d2
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
(cherry picked from qtbase/c012ee2940bc087720b4aa0d257540921cf9a139)
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
8 years agoFully expand entities to ensure deep or widely nested ones fail parsing
Mitch Curtis [Tue, 12 Nov 2013 12:44:56 +0000 (13:44 +0100)]
Fully expand entities to ensure deep or widely nested ones fail parsing

With 512a1ce0698d370c313bb561bbf078935fa0342e, we failed when parsing
entities whose partially expanded size was greater than 1024
characters. That was not enough, so now we fully expand all entities.

This is a backport of f1053d94f59f053ce4acad9320df14f1fbe4faac.

Change-Id: I41dd6f4525c63e82fd320a22d19248169627f7e0
Reviewed-by: Richard J. Moore <rich@kde.org>
8 years agoWhen reparenting a widget, children need to reregister as a drop site
Andy Shaw [Thu, 14 Nov 2013 13:57:50 +0000 (14:57 +0100)]
When reparenting a widget, children need to reregister as a drop site

If a widget is a drop site and an ancestor gets reparented then the
widget needs to be reregistered as a drop site so that it is correctly
associated with the new native parent widget.

Task-number: QTBUG-30276

Change-Id: I440077e54f614d0bfbaef46104de6598411c986b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
8 years agoQThreadPool: fix race at time of thread expiry.
David Faure [Fri, 1 Nov 2013 09:49:30 +0000 (10:49 +0100)]
QThreadPool: fix race at time of thread expiry.

The current synchronization mechanism was racy: decrementing waitingThreads
and then hoping that the wakeOne will wake a thread before its expiry
timeout happens. In other words, on timeout, a just-assigned task would
never run. And then no other task would run, if maxThreadCount is reached.

Fixed by using a queue of waiting threads (rather than just a count), and by
moving the wait condition into the thread itself, so we know precisely
which one we're waking up, and we can remove it from the set of waiting threads
before waking it up, and therefore it can determine on wakeup whether it
has work to do (caller removed it from the queue) or it expired (it's still
in the queue). This is reliable, whereas the return value from QWaitCondition::wait
isn't reliable, when the main thread has already decided that this thread
has work to do.

Task-number: QTBUG-3786
Backport from qtbase/a9b6a78e54670a70b96c122b10ad7bd64d166514

Change-Id: Ic766ff67dea7a8bb8f1bc893943060ee5428d782
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
8 years agoQThreadPool: fix counting of waiting threads
David Faure [Fri, 21 Jun 2013 08:32:17 +0000 (10:32 +0200)]
QThreadPool: fix counting of waiting threads

QTBUG-21051 has a testcase where activeThreadCount() could actually
end up at -1 (converted to an autotest in this commit).
The reason was: start() calls tryStart() which returns false due to
too many active threads (reserveThread() causes this), so it calls
enqueueTask() - which actually wakes up the waiting thread, but
it didn't decrement the number of waiting threads.

Note that tryStart() is "if I can grab a waiting thread, enqueue task and wake it"
while start(), in case tryStart() fails, wants to "enqueue, and then if I can grab
a waiting thread, wake it". This is why enqueue shouldn't wake; waking must happen
only if we can grab a thread (d->waitingThreads > 0).

Task-number: QTBUG-21051
Backport from qtbase/dacf9961da86751a59da0e84bc943fe0d1c8d95b

Change-Id: I1e437da27b733a72b48ff1b6f2b78f81a7ed129b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
8 years agoQThreadPool: fix data races in activeThreadCount()
David Faure [Mon, 19 Aug 2013 08:45:06 +0000 (10:45 +0200)]
QThreadPool: fix data races in activeThreadCount()

Rather than trying to make it lock-free (which requires double-bookkeeping of
4 atomic ints!), just lock the mutex before calling it.
tst_bench_qthreadpool shows no difference whatsoever between the two
solutions, I get 0.005 msecs per iteration in startRunnables().

Of course looping over calls to activeThreadCount() is a bit slower,
from 0.0002 msecs per iteration to 0.00027 msecs, i.e. 35% more.
But polling activeThreadCount() from the app is a really wrong thing to
do anyway, this benchmark was just for my own curiosity about the
price of a mutex in a function that sums up 4 ints.
What matters is start() performance, which is unchanged (0.00007 msecs
is just noise compared to a 0.005 total, that's 1.4%).

Backport from qtbase/85b24bb2dea97c3a9b013bacd5a422b26fe5d14b

Change-Id: Id32791069bc1e2dd61cef708d5287c9f9b7e5582
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
8 years agoQThreadPool: fix typos
David Faure [Fri, 21 Jun 2013 12:21:02 +0000 (14:21 +0200)]
QThreadPool: fix typos

Task-number: QTBUG-31919
Backport from qtbase/37dc44d499884bd0d7ab9d2f1547db468c9fe53b

Change-Id: I9496b059ed201da6b7a5ec02c4acb8f231e40c30
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>