aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Set the format for the fallback offscreen surfacev5.2.0Laszlo Agocs2013-12-051-0/+1
| | | | | | | | | | Ie76dbe5fd4ab935db3da34f3ff63d217a3ba5013 fails to set the format for the QOffscreenSurface, resulting in BAD_MATCH failures when trying to make it current. Task-number: QTBUG-35410 Change-Id: I1d420556fad4df96a1893cb3513e398eeb6e71aa Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix broken visibility property assignment after d0644b040eTor Arne Vestbø2013-12-051-1/+1
| | | | | | Task-number: QTBUG-35412 Change-Id: I09feca09030a2eb07aa1abebf65481d68b880c79 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix a crash in JSON.parseLars Knoll2013-12-042-2/+15
| | | | | | | | | | Properly set members that are actually array indices and don't crash when trying to set those. Task-number: QTBUG-35383 Change-Id: I04d4b65c27e97a2e9db19541ed46ee1bb202f780 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* QQmlImport: Don't try use a dangling pointer.Robin Burchell2013-12-041-2/+1
| | | | | | | | | | | | | | toUtf8 would return a temporary, and constData would hold a pointer inside that temporary. This isn't even remotely safe. Move the pointer use down to the initializeEngine call so it is kept around long enough for us to do our stuff. This is a backport of cf51cdb8fb002ae3602a4c886e7c67913d77373a. Task-number: QTBUG-35355 Task-number: QTBUG-35343 Change-Id: I338ad7f4d4137445ed9a311a293ea82bf023aafd Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* static builds: add classname entry to qmldir for QtQuick.Dialogs.PrivateRichard Moe Gustavsen2013-12-041-0/+1
| | | | | | | | | | Add classname entry to qmldir, otherwise qmlimportscanner cannot utilize it when doing static builds (on iOS). Task-number: QTBUG-35369 Change-Id: If5440ffcdd805a832d4ff1d129e9f24d222b45d5 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Revert "Revert ffaf39e9a7f11d4e2800b3b37160a2a952795614"Alan Alpert2013-12-0411-14/+11
| | | | | | | | | | This reverts commit 27052dcad9810869a9065da4c06e9f14379411d7. While the additional flexibility would be nice, I've been reminded that we already did commit to it back in July. Change-Id: Iaf990dda98ee46eb028b4737bdeeafd050d9513f Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
* Fix binding loop in Maroon in Trouble QML demoTopi Reinio2013-12-041-1/+3
| | | | | | | | Task-number: QTBUG-35210 Change-Id: I44bd9f19acba5b59711aa4ca3d2b12c246afcc59 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Sebastian Wozny <swozny@blackberry.com>
* Don't leave the GL context current after cleanup.Gunnar Sletta2013-12-041-18/+34
| | | | | | | | | | | | | | | | | | | | | | When shutting down, we left the gl context current on the window even when it was hidden. On mac this was a problem as it would optimize away our makeCurrent when the surface was made visible again, leading to nothing being rendered. So we call doneCurrent regardless during invalidateGL(). We also check and verify that makeCurrent in invalidateGL() actually succeeds. This lead to another problem which is that closing the app using [x] will call QWindow::destroy() on all windows, removing their platform windows and causing makeCurrent to fail. To still gracefully clean up resources, we introduced the concept of an offscreen fallback surface which is temporarirly used during the cleanup when needed. The problem is still present on QWindow+QOpenGLContext level, and I've opened QTBUG-35363 to fix this. Task-number: QTBUG-35234 Change-Id: Ie76dbe5fd4ab935db3da34f3ff63d217a3ba5013 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Revert "Load "@2x" images on high-dpi "retina" systems."Morten Johan Sørvig2013-12-031-11/+0
| | | | | | | | | | | This reverts commit 707bbe5dea9d7398b205124a54422f2fafb6f151. By itself this is completely broken and the image will display at twice the size. We need to add code to handle the @2x image but revert for now to get sane behavior. Change-Id: Iccdb26e9d19930b5d0ef4b6c7f596c5766f77a8a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Update changelog for change Icf323618 / QTBUG-35174Tor Arne Vestbø2013-12-031-0/+8
| | | | | Change-Id: Idff1507fdce960ad7dabc2662bb273bc6103c1ca Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Release GL resources of ShaderEffectSource while we still have GL.Gunnar Sletta2013-12-032-3/+13
| | | | | | | | | | | | | When a Window element is used, the QML window item is deleted before the ShaderEffectSource component and the deleteLater to delete the texture gets handled too late. We now register for the sceneGraphInvalidated signal and release resources synchronously while shutting down. Task-number: QTBUG-35294 Change-Id: Id83b669ddc16723551e5612264ccbad6d3a9bbcb Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Fix style animations to stop when the item is hiddenJ-P Nurmi2013-12-031-1/+4
| | | | | | | | | | | | | | QStyleAnimation automatically stopped for hidden QWidgets, but didn't know anything about QQuickItems and kept animating regardless of their visibility. QStyleAnimation was changed so that it will keep animating only as long as the animation target accepts animation updates. This change ensures that the style animation updates are accepted only when the item is visible. Task-number: QTBUG-35319 Change-Id: I3c93a653316b8abbbc32940cd7499b660828eff8 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Safely abort when we don't succeed in creating a GL context.Gunnar Sletta2013-12-032-3/+11
| | | | | | | | Task-number: QTBUG-33363 (cherry-picked from commit 12eab9162781) Change-Id: Ia2b0c329157786cb4ec703989f12d2fdb1ce6bc8 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Update changelog for 5.2.0Alan Alpert2013-11-302-26/+74
| | | | | | | | | Includes taking entries for 5.1.2, which is no longer a general bugfix release. Change-Id: I33b4c06aa83d6344a2f14b4147eaf7056c3bacb9 Reviewed-by: Sergio Ahumada <sahumada@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Doc: Change the order of QQuickText function definitionsTopi Reinio2013-11-301-49/+49
| | | | | | | | | | | | | | For Text QML type, some property and method documentation is missing from the output because in the source file, they appear before the '\qmltype Text' command. This change reorders the functions so that qdoc will see all documentation for Text QML type. Task-number: QTBUG-35018 Change-Id: Icd995f66679d5105912ee12a7aeffd510921a54d Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Doc: Update examples used in Writing QML Extensions tutorialTopi Reinio2013-11-3029-39/+212
| | | | | | | | | | | | | | | | | | | Update the examples to use Qt's resource file system to store the qml files in, enabling them to run unmodified in any platform/build configuration. Also, - Chapter 6: Move the plugin code to a subproject and create a C++ application to use the plugin - Update documentation related to above chapter - Add thumbnails for the examples so they will appear in Qt Creators example list. Task-number: QTBUG-35001 Change-Id: I29122af11bb11c7e5e17993438e5fc18c7f96f89 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Handle boundingboxes with NaN in them.Gunnar Sletta2013-11-302-8/+7
| | | | | | | | | | | | NaN does not compare well with other floats. The result is that the bounding box is left at its initial values, FLT_MAX for top-left and FLT_MIN for bottom-right. If so, treat geometry as invalid, aka infinite. Task-number: QTBUG-35192 Change-Id: I1df6987d56a0ce1f500b0eba344a5dcbc55f80a4 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* disable qml import scan for qmljsOswald Buddenhagen2013-11-301-0/+1
| | | | | | | | | there is nothing to scan here. Task-number: QTBUG-35160 Change-Id: I47223a295eafe67f0f2dd85a12444260f88d0623 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Ensure that QML Windows respect the default platform window stateTor Arne Vestbø2013-11-302-1/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'visible' property of a Window would be set on the baseclass QWindow like any other property during QML component creation, which would cause create() to be called and the platform window would be created. This left the 'visibility' of the QML window as Windowed, not respecting the platform defaults for how windows should be shown. The user would have to explicitly set "visibility: Window.AutomaticVisibility" for this default to apply, which doesn't make sense -- it should be the default. We solve this by deferring setVisible and setVisibility on the window until the component is complete and we have a full picture of its state. We then ask the platform for the default state based on the window flags (ensuring that eg "flags: Qt.Popup" will not result in maximized windows on iOS and Android), and apply the deferred visibility. The deferred visibility may still be 'false', but setting the window state makes sense anyways, so that a later "visible = true" will apply the default window state. Deferring platform window creation until the geometry has been potentially set from user code also has the benefit that the platform window can check the geometry and apply a default geometry if it's null. This was not possible when the 'visible' property was a regular property, as you could not know if the user's geometry changes would come after platform window creation. Task-number: QTBUG-35174 Change-Id: Icf3236187992048a85b2196c059f9b54699041a4 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Revert 99480d5420c0beea6771be582c039b550a4461f5Gunnar Sletta2013-11-272-18/+0
| | | | | | | | | | | | | The Mac OS X platform plugin has been fixed so that this hack is no longer needed. Not to mention that it breaks on XCB. We keep the warning about bad exposes from the plugin in debug mode. These are still useful for tracking down future bugs. Task-number: QTBUG-35143 Change-Id: I5125f7ae2b7fd77c55e9a29b10aa5434598a9ea9 Reviewed-by: Ulf Hermann <ulf.hermann@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix out of bounds array access when index is integer and negativev5.2.0-rc1Simon Hausmann2013-11-251-2/+11
| | | | | | | | | | | | When the index is a double, the branchTruncateDoubleToUInt takes care of branching when the index is negative, but when it's an integer we need to perform that check ourselves. Without the patch it's rather easy to cause the application to crash. Change-Id: If908923ddc2077b3fb3dd42350f038ff0072e8e1 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Use QFontDatabase to check if a font is scalable.Yoann Lopes2013-11-251-2/+5
| | | | | | | | | The flag set in QFontEngine was not always correctly set, use QFontDatabase instead which is slower but should always be correct. We fallback to native font rendering when the font is not scalable. Change-Id: Ie9a2397abd42890d0fb05bc2f9c46a60040296f2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Stop render thread regardless when the window is being destroyedGunnar Sletta2013-11-251-2/+2
| | | | | | | | | | | | | | | | | | | | | When a window is shown and quickly hidden again we can get to a state, on a asynchronous windowing system API, where the isExposed=true event has been pushed to the event queue but not yet processed at the time the user calls hide(). As hide() immediately sets isVisible() to false, we end up with isExposed=true and isVisible=false which prevent the WM_Obscure event to be sent to render loop which means the render thread thought the window was still on screen when we reched the shutdown in WM_TryRelease. Changed WM_TryRelease handling to disregard window state when the window is being deleted. This forces SG and GL cleanup and stops the thread. Task-number: QTBUG-35055 Change-Id: Ibac5aa27354d6450f30a61450214cb785ab855bf Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Fix rendering of Flipable content.Gunnar Sletta2013-11-251-1/+1
| | | | | | | | | | | | | When a batch is merged in the renderer, we use the z component to stack the item front to back. This works because each item is guaranteed to have a z-range of 0->1. However, when a projective matrix is used, we need to compensate for the implicit [x,y,z]/w, which GL applies to gl_Position after the vertex stage completes, so that this guarantee still holds. Task-number: QTBUG-35020 Change-Id: I254a3d4dc9ad22f53717160ec6ad8f3a27b43d1c Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* No assert when the focus changes and a window has no active focus item.Frederik Gladhorn2013-11-251-10/+11
| | | | | | | | | | | | | | | | [ChangeLog][QtQuick] Fix crash when showing and hiding a window that has no active focus item. QtQuickControls hit the situation where a popup window was shown without ever having an active focus item. When then closing the popup, clearFocusInScope would assume it had to always modify the old focus, but in this case the focus would be on the window itself, so there is nothing to update. Task-number: QTBUG-35057 Change-Id: Ifbde4689d39f98b13e6f90573cb22e28bb86f2c4 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Liang Qi <liang.qi@digia.com>
* Fix memory corruption in QML expression compilationSimon Hausmann2013-11-254-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We store QQmlPropertyData pointers in our IR for Qt meta-object property resolution at compile time. As it turns out however, it is possible that these pointers change after retrieval from the QQmlPropertyCache, as the cache may change later in the compilation process. Therefore we must do what also QQmlCompiler does by storing a copy of the QQmlPropertyData. For the JS IR we can do that conveniently through the IR memory pool. A side-effect of this bug was that QQmlPropertyData pointers were re-used and so the identity check in the isel later such as _function->contextObjectDependencies.contains(m->property) for dependency tracking failed. In the example given in the bug report it was determined that the window.contentWidth property wouldn't need a property capture, and therefore the binding was not re-evaluated as window.contentWidth later in the binding evaluation phase received its correct value. This patch also fixes the incorrect debug output names assigned to JS binding expressions, where the index used to look up the name is per compiled object, not per QML component. Task-number: QTBUG-35063 Change-Id: I3e5bbfaac11e5c122a2ed15a3e486a93988e1b6e Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Allow for QtQml and QtDeclarative to co-exist at run-timeSimon Hausmann2013-11-252-6/+20
| | | | | | | | | | | This patch changes QQmlData to share the very first bit with QDeclarativeData, to indicate if the QObject in question is exposed in the QML1 or QML2 run-time. Task-number: QTBUG-35006 Change-Id: I3aa1d7c99038792011afd9f481ad30d9b981721f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Do not crash when resizing invisible (non-tracked) windows.Gunnar Sletta2013-11-251-3/+4
| | | | | Change-Id: I776c21a0f675d2dbe831325cef2c1c2a103e03e5 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Android: Add qmltooling plugins to apkDaniel Teske2013-11-231-0/+3
| | | | | | | | Task-number: QTCREATORBUG-10560 Change-Id: Ifabe6a74552dbc74b1de3030f8d60efda865f84a Reviewed-by: Aurindam Jana <aurindam.jana@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Be even more tolerant towards broken platform behavior.Gunnar Sletta2013-11-227-7/+25
| | | | | | | | | | When the platform (Mac in particular) sends us exposes for windows which are not renderable, we store it for later and fake expose events when we get resized. Task-number: QTCREATORBUG-10814 Change-Id: I909bb5a920550589322afd97ae1834884754cf81 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QtQuick.Dialogs MessageDialog docsShawn Rutledge2013-11-226-15/+203
| | | | | Change-Id: Ic229a26c395be0542409ba3e13739e55b6ffb521 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Safeguard the threaded renderloop against incorrectly exposed windows.Gunnar Sletta2013-11-221-6/+9
| | | | | | | | | | | | On Mac we had a situation where we got expose events for windows which were either 0x24 in size or completely off the screen. These would result in makeCurrent failing and lead to crashes later on in the scene graph. Safeguard against invalid dimensions during initialization and abort after a call to makeCurrent if any of them fail. Task-number: QTCREATORBUG-10814 Change-Id: I9063ea4d078eea3914666e4c155d141a1502e2ff Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Avoid symbol clashes when linking QtDeclarative and QtScript staticallySimon Hausmann2013-11-221-0/+5
| | | | | | | | | Re-define the three symbols we actually implement (as stubs). Task-number: QTBUG-35041 Change-Id: Ie9511207440fa23645e52643881f5993177a4368 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Don't store the QSGNode pointerAlan Alpert2013-11-222-24/+24
| | | | | | | | | | | | | The QSGNode subtree may be cleared at any time. Get the subtree via the node pointer passed in updatePaintNode, to ensure that the subtree is still valid each update. Some references are still being stored but invalidated when a new subtree is created. QTBUG-34994 has been created to track fixing that. Task-number: QTBUG-33553 Change-Id: I2115aff931d42b613d207553c636be7d80c405bb Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* TextInput: add editingFinished signalLiang Qi2013-11-225-0/+75
| | | | | | | | | | | | | | | Autotest is included. Task-number: QTBUG-34780 [ChangeLog][QtDeclarative][TextInput] add editingFinished signal Change-Id: Ib633daee67cd4e5f15739a6004adbe882ab3d3fc Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
* V4 Use getrlimit on Darwin to get the stack size for the main threadAndy Nichols2013-11-201-1/+8
| | | | | | | | | Turns out pthread_get_size does not return the correct size when it is called from the main thread, so to workaround you call getrlimit instead Without this change, most QML applications are broken on iOS. Change-Id: I9a61494de26caa3d7be7e46a991e6d6d0514ce17 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* qml tool on OSX: wait for a timeout before exitingShawn Rutledge2013-11-201-4/+28
| | | | | | | | | | | | Double-clicking to open a QML file was not working because it would exit if no files are given on the command line. It needs to wait a while for the QFileOpenEvent. Task-number: QTBUG-34926 Change-Id: Icb585a777b0438db85120c62e7717f0f6eafffb1 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Enforce window rendering in sequence on llvmpipe.Gunnar Sletta2013-11-202-0/+13
| | | | | | | | | | | When rendering multiple windows in parallel on llvmpipe we end up with crashes deep inside llvmpipe as multiple threads seem to access unprotected resources. Work around this bug by enforcing that scene graph rendering happens on one window at a time. Task-number: QTCREATORBUG-10666 Change-Id: I2f734e8f653b2a9b4108eb189280ab922581e2c0 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix bad refcounting for Context2D.drawImage with an image item source.Gunnar Sletta2013-11-201-1/+1
| | | | | | | | | | | The pixmap we get from createPixmap is cached internally in the QQuickCanvasItem's cache so we need to refcount it properly. Using take would result in the refcount going to zero in this function which would cause a crash. Task-number: QTBUG-34714 Change-Id: I5f0e75a7117c53e4b89ac133ba7d161bc7b9053d Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Check that the pathlist is not empty before calling sort() on itLars Knoll2013-11-201-1/+2
| | | | | | | | | | Try to fix QTBUG-34834, where the app crashes because we replaced qSort with std::sort(). Apparently std::sort always dereferences begin(), even if it is the same as end(). Task-number: QTBUG-34834 Change-Id: I6207a27f61f21265dd964d7f4a6b78d059c615c8 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* V4: fix Array.indexOf() for QStringListLiang Qi2013-11-203-1/+16
| | | | | | | | | Autotest is included. Task-number: QTBUG-33542 Change-Id: I46c3a81006019c6613a3d35aa018217f85a15d0b Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Liang Qi <liang.qi@digia.com>
* iOS: Fix Build error in QSGTextureAndy Nichols2013-11-190-0/+0
| | | | | | | | We don't do build tests for qtdeclarative, and so this guy slipped through the cracks. Change-Id: I2ac29c6b7ec70f4dc4ca4bc682203bbca06f0e2a Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Fix build on iOSTor Arne Vestbø2013-11-191-1/+1
| | | | | | | Icccd542b8122c7bfa0e83 and Ia6e9f06dbb850 clashed. Change-Id: Iaea844c9955eb29104ee32660499a67cb7224cbf Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Greatly reduce memory consumed by QQmlEngine instancesLars Knoll2013-11-193-29/+112
| | | | | | | | | | | | | | | | Due to a inefficiency in our InternalClass implementation, we were not sharing the string and attribute table between internal class instances. This was extremely inefficient with the Qt object, as it created around 1000 internal classes with large string and property tables. With the patch these tables are now shared. Reduces memory consumption of a QQmlEngine instance from around 6.5M to a couple of 100k. Change-Id: Ib763f31deca0808c000ac2c30aa0b05e806bda40 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* FileDialog example: remove setGeometry buttonShawn Rutledge2013-11-191-10/+0
| | | | | | | | | This was more of a manual test than an example: it should be possible to set the geometry of widget-based and qml-based dialogs. Since it doesn't work for native dialogs let's not invite bug reports about it. Change-Id: I43cb97bff0af932268ae541e3f812fc17a1f76ae Reviewed-by: Liang Qi <liang.qi@digia.com>
* Fix compilation on QNXFabian Bumberger2013-11-191-1/+1
| | | | | | | pthread_getattr_np is not available there, so we use the default implementation (1MB stack limit) for now. Change-Id: Ia1f3cbbcd846998b688541c0b576ef42f22ac8b6 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* V4: remove failing assert and fix code.Erik Verbruggen2013-11-193-3/+29
| | | | | | | | | | Assert failed for cases where the node’s ancestor with lowest semi-dominator number was not the same as the parent. The test case exemplifies this. Task-number: QTBUG-34792 Change-Id: Ie6847b22a27211801bff7479bfcbfaf329c6005a Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
* Fix failing assertion when trying to assign to an id referenced QML objectSimon Hausmann2013-11-197-4/+30
| | | | | | | | | | References to id addressed QML objects are member expressions, which are unlike other member expressions by not being lvalues. Handle this correctly. Task-Number: QTBUG-34890 Change-Id: Ied6230edbc561128ad36bf0d1a1918185204deec Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* V4 SSA: speed up dominator calculations.Erik Verbruggen2013-11-181-63/+137
| | | | | | | | | | | Changed three recursive routines to worklist-based iterative ones. This not only speeds up the dominator frontier calculation, but also prevents the algorithm to run out of stack space. This is a partial fix for QTBUG-34047. Change-Id: Ife8dc35724d50408ad356e1621884bdb82db9626 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix compiler warnings with mingw64.Erik Verbruggen2013-11-184-28/+31
| | | | | | | Task-number: QTBUG-34152 Change-Id: Ibb93d1cac8c343a7ca34ce7d010f24fc56ba89df Reviewed-by: Lars Knoll <lars.knoll@digia.com>