summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix disconnect()ing from signals declared in a base classOlivier Goffart2014-08-112-4/+20
| | | | | | | | | | | | | | | | Fix disconnection from pointer to member signal that belongs to the base class, but whose type is a pointer to a member of the derived class. Commit 9cc106d9d7d951fcf30f4b0f8606afa6b50892ec fixed connect, so apply the same fix in disconnect [ChangeLog][QtCore][QObject] Fixed disconnecting from pointer to member signal that belongs in the base class but whose type is explicitly given as a pointer to a member in the derived class Task-number: QTBUG-40638 Change-Id: Ia546fc8f36e1ea0dd0645bdd820aea47f43677ac Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Doc: document that we have unfixed bugs with waitForXxx on WindowsThiago Macieira2014-08-111-0/+23
| | | | | | | | | | | We have to document because we don't know how to fix the bug and don't know when they will be fixed. We should also disable the unit tests related to those functions, as they probably cause CI instability. Task-number: QTBUG-24451 Change-Id: I0e60682ec4af7570258b13735339051ba8f4a6e4 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Fix rendering alpha-blended text which needs to be clipped at the top.Simon Sasburg2014-08-111-1/+1
| | | | | | Task-number: QTBUG-34148 Change-Id: I9c0694e67cc9883db318c1a1558bdf6e08088db4 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Fix build due to missing include when using a minimal config.Sérgio Martins2014-08-111-0/+1
| | | | | | | | | | | QStyle is used, so include it explicitly instead of relying on indirect inclusions. Build was broken when using a bunch of QT_NO_ defines, not sure which one triggers the failure though. Change-Id: Ib07218521648448576f1b55d2d91d1711c048f09 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Fix build with QT_NO_DRAGANDDROPSérgio Martins2014-08-111-9/+9
| | | | | | | viewportSizeHint() should be defined outside the QT_NO_DRAGANDDROP ifndef Change-Id: I7c23c820ea58b3614eb030dc5b0f290ad891ccb1 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Font Database: Add support for private, system UI font familiesGabriel de Dietrich2014-08-1111-82/+215
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We introduce QPlatformFontDatabase::isPrivateFontFamily() to allow testing for private, system UI font families. Both QFontComboBox and QFontDialog need to filter out those private font families which, by definition, should be hidden from the end user. (The textedit example had to be updated to fix the issue where the default font would be private. In 5.4, we will be adding an equivalent, public API in QFontDatabase, and a better solution for the textedit example and QTexEdit in general). In particular, on OS X and iOS, private fonts are used for the system UI font. Those have their font family name prefixed by a dot. QCoreTextFontDatabase knows about this, and makes sure those are tested positive as private font families. In order to have a cleaner layer separation, we moved the QPA theme font resolution from the platform theme classes into QCoreTextFontDatabase for both Cocoa and iOS QPA plugins. In both cases, we use CoreText's CTFontCreateUIFontForLanguage(), that nicely maps to the HITheme API we were using so far on Mac. That means one HITheme dependency less. We also cache the font descriptors we get for these font for each time QCTFD::populateFamilies() gets called. (While not common, this currently happens in auto-tests, like tst_QFontDatabase, and could happen in actual applications -- specially when adding and removing application fonts.) Change-Id: Ic6f0b60f9f597afee1a43596a669742dc546b97f Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Apply upstream patch r1498 to our PCRE copyGiuseppe D'Angelo2014-08-102-12/+54
| | | | | | | | | | | It's actually a subset of the patch (tests, docs, other whitespace fixes were dropped). Fixes a stack overflow issue on pathological regexps reported upstream: http://bugs.exim.org/show_bug.cgi?id=1515 Change-Id: Ie36536e820d79ff842d90efa6bec22b701423793 Reviewed-by: Richard J. Moore <rich@kde.org>
* Apply upstream patch r1495 to our PCRE copyGiuseppe D'Angelo2014-08-102-1/+28
| | | | | | | | | | | It's actually a subset of the patch (tests, docs, other whitespace fixes were dropped). Fixes a stack overflow issue on pathological regexps reported upstream: http://bugs.exim.org/show_bug.cgi?id=1503 Change-Id: If080e4c1e7a86c86459bbbc631c8d8bb3cd7b99f Reviewed-by: Richard J. Moore <rich@kde.org>
* Initialize member.Gunnar Sletta2014-08-081-0/+1
| | | | | Change-Id: I9ed8d5a7aeb40886bafbd9eb2003e88e5d796cc9 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Document missing QLatin1String methodsThiago Macieira2014-08-071-0/+88
| | | | | | | Most of them were added before 5.0, but it's ok to just list as 5.0. Change-Id: I6e83a210a0165659f710d47ed595e9e89d5dbac9 Reviewed-by: Martin Smith <martin.smith@digia.com>
* network tests: add manual test for auth / proxy authPeter Hartmann2014-08-071-0/+82
| | | | | | | | | This is helpful to e.g. test an NTLM proxy. The test server currently does not support NTLM; this test offers a possibility to specify a proxy server via environment variables. Change-Id: Iea94656d38424c1d932fc854d13ca15ca47cdd68 Reviewed-by: Richard J. Moore <rich@kde.org>
* Uncomment some tests which accidently got commentedAndy Shaw2014-08-071-6/+6
| | | | | | | | With SHA1 47b3ecf3f49933f2a7e3a9dd98f0641d513822bb some tests got commented out by accident. This re-enables those tests. Change-Id: If9c7d8a672b66086895a0383fe87d3101fb146fb Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Both HiQualAA and normal AA should mean antialiasing in rasterengine.Gunnar Sletta2014-08-071-1/+1
| | | | | Change-Id: I1970c96e7681e4059984d837e12f044f138e6d7e Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Check if Start/EndPage returns non-positive value when error checkingAndy Shaw2014-08-071-4/+4
| | | | | | | | | StartPage and EndPage are documented to return a non-positive value (0 or less) when they fail, therefore it is not enough to check if !StartPage. Checking if is 0 or less is more accurate. Change-Id: Ia0ff43da4e4309ba0a5983e91a0ad583aad0a955 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Windows: Fix stored family name of fallback fontsEskil Abrahamsen Blomfeldt2014-08-061-0/+2
| | | | | | | | | | | | | | | | | | | | | When we create fallback fonts, we copy the fontdef of the main font, but we need to update the family name to match reality, otherwise a QRawFont created with the font engine will have the wrong family name. This is already done in the default implementation of loadEngine(), but was missing from the Windows implementation. One large consequence of this was that when the distance field renderer cloned the font engine (to change its size), it would clone it with the wrong family name. When it later painted its glyph indexes, they would of course refer to the wrong font (the fallback) so random characters would appear. [ChangeLog][Windows] Fixed using QRawFont with fallback fonts, e.g. in the case of text rendering in Qt Quick. Task-number: QTBUG-39172 Change-Id: Ic8fcd9dfc20ec7aadf0b47d4a80417f401f355fd Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Android: Remove native views when their window is destroyd.Christian Strømme2014-08-061-3/+2
| | | | | | | | | destroySurface() was not removing the native view as they are not in the m_surfaces map. Task-number: QTBUG-40159 Change-Id: Ib5457e0bd34141654fa47883f5e125d894b0bd05 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Android: Fix QAndroidPlatformServices::openUrl().Christian Strømme2014-08-062-6/+10
| | | | | | | | Return true only if an activity was found for the intent. Task-number: QTBUG-34716 Change-Id: I764caf1e8afa3b17b2d71f52873c17e5d834a956 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Android: Fix recursion bug in callStaticMethod()Christian Strømme2014-08-061-3/+3
| | | | | | | | calling callStaticMethod() with template type jlong, jdouble or jboolean would cause the call to loop indefinitely. Change-Id: I99caa576e761fdef623ece04e0779e4cf2535592 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* GTK file dialog: pre-fill the filename if given to a Save dialogShawn Rutledge2014-08-061-1/+7
| | | | | | | | | | | | | | The docs for gtk_file_chooser_set_filename explain that if a file is new, we should call gtk_file_chooser_set_current_name instead. (But in that case it is necessary to set the directory separately.) Qt doesn't make a distinction between a save dialog for saving a new file vs. a dialog for re-saving an existing file, so it seems this is the better way to do it all the time, since a save dialog would most often be used for saving a new file. Task-number: QTBUG-40573 Change-Id: I285e898fafc54ae39f09d564ca431a279a8f8919 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* QFileDialog docs: remove misleading sentence about static functionsShawn Rutledge2014-08-061-3/+1
| | | | | | | | | Native dialogs are used whenever possible, not just when the dialog is instantiated via the static function. Task-number: QTBUG-36657 Change-Id: Ibad67114e67f8e2f9956037f8469542c72bfd8ea Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Doc: Placed Qt OpenGL class convention in code block.Jerome Pasion2014-08-061-2/+4
| | | | | | | | | -QDoc tried to autolink where it should not. -The syntax looks much better in a code block than in a paragraph. Change-Id: I21d08cbb1537186d09b52898d7b70a5c0794256c Task-number: QTBUG-35019 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Undo: Fix state entry bug for parallel state groupsPeter Kümmel2014-08-062-5/+4
| | | | | | | | | | This commit reverts c4cef6fae9f2a55f21fc9517855dfcf659c89081. The above fix for QTBUG-25958 (cloned in QTBUG-40219) is not complete and introduces the regression QTBUG-30049. Task-number: QTBUG-30049, QTBUG-25958, QTBUG-40219 Change-Id: I3c4b774dce06c13cb4e089f8413a7747cedfd212 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Do not add QOffscreenSurface windows to the global listLaszlo Agocs2014-08-051-0/+3
| | | | | | | | | | | | | | | | | | | QOffscreenSurface has to stay usable even after returning from app.exec(). Hence close()ing the underlying hidden window, that is used on platforms that do not provide real offscreen surfaces, is wrong. Normally all QWindows are closed (and thus destroy()'ed) when quitting the application, meaning the the offscreen surface cannot be made current anymore after returning from exec(). This is an unnecessary limitation and makes certain cleanup operations impossible. Backport of ba79f36cb1319a279068adb6d02a8993cbc62613 from dev. This is necessary for the 5.3 series too to avoid issues on exit in QQickWidget apps, on OS X in particular. Task-number: QTBUG-40505 Task-number: QTBUG-39908 Change-Id: Iea1489378a18f29ff84ba8f13a6dad2d66d2b315 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* tst_QHash: check which of several equal keys is insertedMarc Mutz2014-08-052-0/+67
| | | | | | | | | | | | | | | | Add a test that checks that QHash keeps the first of the keys that compare equal. This may or may not be documented, but is inconsistent with the values in a QHash, where the last element with equal key is kept. Document this as a test. That way, we'll be informed when the behavior changes (e.g. by a port to std::unordered_map). Do the equivalent checks in tst_QMap, too. There, of course, instead of equal keys, check equivalent ones. Change-Id: I2c5f04f8e8a6bbc7dbaadadd878a4c876e4df042 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* OpenGL: destroy QGLContext allocated by QGLContext::fromOpenGLContextDavid Fries2014-08-053-2/+7
| | | | | | | | | | | | | | | QGLContext already uses ownContext to identify when it "owns" QOpenGLContext and will delete QOpenGLContext when needed. In the other way QGLContext::fromOpenGLContext creates a QGLContext for QOpenGLContext, and is now using qGLContextDeleteFunction to identify if QOpenGLContext "owns" QGLContext by QGLContext only passing a delete function when QOpenGLContext should delete QGLContext, and by QOpenGLContext calling deleteQGLContext() from destory() to do the destruction avoiding the previous leak and sometimes crash on exit. Change-Id: I65e791776e99b456e4d0c70fc5b5cdb33c975893 Task-number: QTBUG-40286 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_QSet: check which of several equal elements is insertedMarc Mutz2014-08-051-0/+26
| | | | | | | | | | | | Add a test that checks that QSet keeps the first of the elements that have equal value. This is documented, but inconsistent with values in a QHash, which keeps the last element with equal key. Document this as a test. That way, we'll be informed when the behavior changes (e.g. by a port to std::unordered_set). Change-Id: I4ca1718bb86599b925b3ccd13b0856917cd4ce67 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* fix paths in installed qtmain.prlOswald Buddenhagen2014-08-041-5/+2
| | | | | | | | simply make use of the infrastructure used for "proper" modules. Task-number: QTBUG-40026 Change-Id: Iffab72f7fb7a128549da2839a7497cff2f48b777 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* pass --sysroot to compile tests also on windowsOswald Buddenhagen2014-08-012-0/+12
| | | | | | | Change-Id: I486059197479842f32c3590d7fd269550d22698e Reviewed-by: David Schulz <david.schulz@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* add /ENTRY:main only for target buildsOswald Buddenhagen2014-08-011-2/+4
| | | | | | | Change-Id: Ifa1d36607a1884ec989b5b514e7d1b9a2b40ddce Reviewed-by: David Schulz <david.schulz@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* avoid that CROSS_COMPILE affects host buildsOswald Buddenhagen2014-08-011-1/+3
| | | | | | Change-Id: Iee40cfd87d7ec640fb4b3526e58317bdc8a778c7 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: David Schulz <david.schulz@digia.com>
* ensure that arch_host.pro is used also on windowsOswald Buddenhagen2014-08-011-5/+7
| | | | | Change-Id: I110ec33a40f37ecdec5ab952ea56a4fc00cd27a8 Reviewed-by: David Schulz <david.schulz@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into 5.3" into ↵Oswald Buddenhagen2014-07-3112-55/+69
|\ | | | | | | refs/staging/5.3
| * Merge remote-tracking branch 'origin/stable' into 5.3Oswald Buddenhagen2014-07-3012-55/+69
| |\ | | | | | | | | | Change-Id: I2a044d44ca991ba20ddd710053b85afb51e362d3
| | * Fix warning message when re-setting text on tooltipJoni Poikelin2014-07-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix warning message that gets printed when changing tooltip message without rect and widget parameters for already shown tooltip widget. Task-number: QTBUG-39550 Change-Id: I69ed8747e5e77ca618525d74479c72e02b7ab897 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * XCB: Enable loading of the Qt::DragLinkCursorAlessandro Portale2014-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It did not load due to an off-by-1 boundary error in a check. Qt::DragLinkCursor happens to be Qt::LastCursor. Task-number: QTBUG-39735 Change-Id: Ia7b11fc4eecc4329bd487bd5689c83c986fd2de6 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| | * move loading of testability driver from QApplication to QGuiApplicationMichael Zanetti2014-07-033-24/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is useful without QWidget too. Change-Id: Ic7857e52e4a8f57c1205615a1f30323b486814af Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Alberto Mardegan <mardy@users.sourceforge.net> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| | * Mac: Don't register for Pan Gestures.Morten Johan Sørvig2014-07-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will enable touch events for the viewport widget, which has undesired side effects (see task). Fixes a regression from Qt 4. Task-number: QTBUG-38815 Change-Id: I7b9c0d1de985d1c82f946140fecf460fcfc5e686 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| | * Fix QFileInfoGatherer threading issueBernd Weimer2014-06-301-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFileInfoGatherer has a QFileSystemWatcher member that lives in the same thread as the QFileInfoGatherer object. If only the poller engine is available for the file system watcher, the engine will only be created when addPaths() is called. However the latter was called from anohter thread (the QFileInfoGatherer thread). Hence the QPollingFileSystemWatcherEngine had its parent in a different thread and worse, this thread didn't have an event loop needed for the QTimer used in the poller engine. This fixes tst_qfilesystemmodel on platforms that only support the polling file system watcher engine. Task-Number: QTBUG-29366 Change-Id: I83b58b4237e3438a27e5cdde4b1e4126e4740a94 Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Support MIPS atomic on pre-MIPS32 architecturesAurelien Jarno2014-06-271-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The atomic functions on MIPS are based on the sync opcode with an immediate argument, which is something introduced in the MIPS32 instruction set. This prevent to use Qt on pre-MIPS32 CPU, like the Loongson 2 CPU. However some of the pre-MIPS32 CPUs interprets the sync opcode with and immediate argument as a sync opcode without argument (which is a stronger ordering than with the argument), and for the others the kernel emulates it. It is therefore fine to use the current MIPS atomic functions on pre-MIPS32 CPU. This patch allows that by temporarily changing the instruction set to MIPS32 around the sync instruction, so that binutils doesn't choke on it. Change-Id: I9cc984bd55b5f172736ce9e638a6f4e271b79fe7 Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Enable sparc detection.Lisandro Damián Nicanor Pérez Meyer2014-06-271-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | It has been working in Debian for some time. It also adds detection for 64bits Sparc. Change-Id: Ie4fc0f58b37672b79191ebe51de0caf2eaf8a1d9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Remove -Wcast-align from QMAKE_CXXFLAGS.Lisandro Damián Nicanor Pérez Meyer2014-06-271-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | x86 doesn't care about alignment, and on all other platforms where it does something it causes build errors, so instead of removing it on those platforms just don't enable it at all. Change-Id: Idfeb387099b28af60ba161b6ca678b7c9df17fe1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Create the 64 bits version strings for MIPS, SPARC and S390Lisandro Damián Nicanor Pérez Meyer2014-06-271-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Note that the specialization has to be declared before the common arch because of how qprocessordetection.h sets this variables. Else you would still get mips on a mips64 system. Change-Id: Ief949a5d30aa217c4bfda2d674ec2683e6c130c4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QNX: Fix QMdiWindow autotestsFabian Bumberger2014-06-251-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In "setOpaqueResizeAndMove" this patch makes sure that the content of a subwindow actually fits into the window, otherwise the resize does not work properly. The content is dpi dependent and thus the pixel size of it increases with the display dpi value. Furthermore when moving the QMdiSubwindow this patch makes sure that we actually grab the window's header and not one of it's tool buttons (minimize, maximize, close). Change-Id: I88314994957c5883f57c09c9240a3b83f1ee42ed Reviewed-by: Sergio Ahumada <sahumada@blackberry.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
* | | Add missing power button keycode to keymapRainer Keller2014-07-311-0/+1
| | | | | | | | | | | | | | | | | | Change-Id: I03682716aaea8344ebb5b71dcea5fe18babcd610 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | | Android: export ANDROID_SDK_BUILD_TOOLS_REVISION.BogDan Vatra2014-07-313-22/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's needed by androiddeployqt tool to run "zipalign" tool and to set it to gradle properties. Task-number:QTBUG-40481 Change-Id: I3dd665a7461a4e981867cdad75a50940e46a5ae6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | | cocoa: Fix compiler warnings about unused functions.Sérgio Martins2014-07-311-6/+0
| | | | | | | | | | | | | | | Change-Id: Id85c86dd2f2468b3ac17751aefdebe0e8666a0c0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* | | Propagate swapInterval to QGLFormatLaszlo Agocs2014-07-311-0/+2
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-39370 Change-Id: Ib3a46a0ae24e5f6d690625b1d91be9e599bbc927 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* | | Fix double clicks in eglfsLaszlo Agocs2014-07-311-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | The window can be null in the qpa event. This is indicated by the nullWindow field to be able to differentiate between a dead window and a genuinely null input. [ChangeLog] Double click events are now sent correctly on eglfs. Task-number: QTBUG-40146 Change-Id: I63c8d08e0dec217b929161d2e827e0c273b4dd3e Reviewed-by: Will Wagner <willw@carallon.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Work around ICC bug in local static symbols for Q_GLOBAL_STATICThiago Macieira2014-07-301-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When compiling the innerFunction() of the Q_GLOBAL_STATIC expansion, ICC emits global symbols for the internal "holder" local static variable and its guard. If there are two global statics of the same name in two different .cpp files, the linker will incorrectly merge the two "holder" variables. This was noted between the "customTypes" global statics of qmetatype.cpp and qdbusmetatype.cpp in a static build. The C++ standard requires that local static variables declared in inline functions must be the same, regardless of whether the body of the function got inlined or not. The IA-64 C++ ABI does that by requiring local static symbols for inline functions to be global and mergeable ("link once"). However, two functions in anonymous namespaces in different files are not considered to be the same function, so their local statics should not be merged. This is where ICC failed: the local statics are global and mergeable, even though the function is in an anonymous namespace. ICC correctly emits the function itself as a local symbol. Alternative solutions were: 1) add "static", but you can't use a static symbol in a template parameter in C++98 mode 2) remove the "inline" keyword, but then GCC 4.8 will not inline Intel issue ID: 6000058488 Task-number: QTBUG-40053 Change-Id: I307622222499682dde711b2771c8cf7557400799 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* | QCoreTextFontDatabase: Fix font weight value when populating a familyGabriel de Dietrich2014-07-291-3/+13
| | | | | | | | | | | | | | | | | | | | kCTFontWeightTrait returns a normalized value between -1.0 (lightest) and 1.0 (heaviest), 0.0 being the regular font weight. The threshold values used in this change have been estimated from the weight values of fonts from the Helvetica Neue and Myriad Pro font families. Change-Id: I49de8e8bd5894107de4842aeda7ace2e83f95be3 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>