Fix typo in calqlatr example doc.

Change-Id: I2c51ea35af7de4a2152840ebf3bfb64ec2ed8d89
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Small fixes

Don't cast from ushort to uchar and back, and remove a
condition that's always true. Allocate some more
memory for matching.

Change-Id: I8167b6e4b4989365ca0ea8e17f4bdb15c0d8e27d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Correctly parse unicode escape sequences between 0 and u001f

The old code rejected these escape sequences because of a
slight misreading of the spec.

Task-number: QTBUG-36968
Change-Id: I56a0e76295d1903b4798719de028bd21ad5be719
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Remove code for conservative GC

This was meant as a debugging help after we took the exact
GC into use. Turns out it doesn't help debug any issues,
aggressive garbage collection is much more helpful in
finding GC issues.

Change-Id: Idfff26d3a4a15e570615009c1e57921bca6297ca
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Remove unused method

Change-Id: Ia7df68e78ac105fe5519cb4f80a64561310d3324
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Optional reporting of GC statistics to stdout

Use QV4_MM_STATS to get some statistics about each GC run
written to stderr.

Change-Id: Idc30c06e1c3ca8353a2f16615cb26df13a8f23ed
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Don't create prototype objects for bindings

They are neither used not accessible from QML.

Change-Id: I14fa6059b8e64cb2c3b9d025061548009a473f96
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Fix warnings about deprecated construction of QStrings from ASCII.

items\qquickimagebase.cpp(322) : warning C4996: 'QString::QString': was declared deprecated
items\qquickimagebase.cpp(342) : warning C4996: 'QString::QString': was declared deprecated

Change-Id: I550a13680d54ef2c3734151f56ea56ac8b9f3b9b
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Pass the actual window format to the offscreen surface during cleanup

Using the requested format (we don't have anything else since the platform
window is gone) is wrong on EGL implementations that offer a different set
of configurations for window and pbuffer surfaces, because we may end up
with a pbuffer surface that is incompatible with the context/window due to
having different color buffer sizes.

To be absolutely sure that the surface is compatible, store the actual
surface format so that it is available even after the platform window is
gone.

Change-Id: Id17c25439c463d4c37af95fc90f336d3f67c6427
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Use an offscreen surface in Canvas

Canvas elements using the default Immediate render strategy
and an FBO result in a failing makeCurrent() and subsequent
crashes due to trying to make the Quick window's surface current
on the gui thread while it is current on the scenegraph render thread.

The EGL spec disallows this explicitly and so the makeCurrent fails with
EGL_BAD_ACCESS. Others, like GLX, do not seem to have this issue since
the spec says nothing about this scenario.

To overcome this, a QOffscreenSurface is used instead since what the
canvas does (rendering into an FBO on a thread that is different than
the one on which the rest of the rendering happens) is a primary use
case for offscreen surfaces (pbuffers) anyway.

This makes demos like stocqt functional again.

Task-number: QTBUG-37772
Change-Id: Id89f71545154856415bbbe4fa924176b25b5086f
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Fix build on older MinGW

The correct declaration of the SHGetPathFromIDList symbol is
being used in mingw-w64 as of r6215, which is a v3 snapshot;
until then, SHGetPathFromIDList was declared to use LPITEMIDLIST.

Change-Id: Icc2f7814bad475c9b825f7d70c0ae4da72f471d9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Document limitations of QQuickWindow::createTextureXxx functions.

Change-Id: I6813f5109cad3e4ace354337d258db8c120b52c5
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Call tzset() from getLocalTZA() so we learn about tz changes

Per POSIX, localtime_r isn't required to call tzset(). This means that
we don't notice that the timezone has changed when calling
Date.timeZoneUpdated() from JS.

Call this in getLocalTZA() so that it always returns results pertaining
to the selected timezone.

Task-number: QTBUG-37683

Change-Id: Ia9098ef0100b7c909a82b125a5ea4f39fba1f306
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Fix reading of shader sources in scene graph example

Task-number: QTBUG-33080
Change-Id: I9219233ab7c7fbe89c0a9f1453d7c6aeeca498a1
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Let render loop be more tolerant wrt when markDirty is called.

Change-Id: I95f1d6fe4695a09b1b6ccaf026137dabc22ec82c
Reviewed-by: Michael Brasser <michael.brasser@live.com>
Save another 4/8 bytes per QQmlBoundSignalExpression

We can move the persistent to hold the scope for a string compiled binding into
the extra data.

Change-Id: I033aa6d080402a1eb19cdae540f9af2c5c3a3fc7
Reviewed-by: Michael Brasser <michael.brasser@live.com>
Optimize construct calls

Optimize construction of the internalClass for the object
being constructed.

Change-Id: Id5fc02c291664ec01c3595ae0acbb6895cc5b147
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Don't use scopes in the instanceOf operator

There's no need to use scopes here, as instanceof can't
trigger any calls into the memorymanager. This slightly
speeds up the code.

Change-Id: Ie7f5c8f3982df1e24d21cfc4e0841d479a75c664
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Optimize ExecutionContext::setProperty

Optimize the code in case the setProperty call tries to
set something in the activation. Avoid resolving the property
index twice.

Change-Id: I60a4535adc014f7118bc3ab6773e10ed688ca0d6
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Get rid of collectDeletables

The method is only required for the QObjectWrapper, but
there we can instead simply register the deletable in the
destroy method.

Change-Id: I944319d327859cce33ac31a174e8d56fc4babfc1
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>