Replace us of v4 identifiers for object id mapping in qml compiler
authorSimon Hausmann <simon.hausmann@digia.com>
Mon, 1 Jul 2013 06:20:15 +0000 (08:20 +0200)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Tue, 2 Jul 2013 13:36:54 +0000 (15:36 +0200)
commitd7134b8b68f0b3530269f7d087bdecfc8986be6b
tree09a36f3a3cfc24b1d4e85b11090b78cb07f3e17c
parent35deea613e96f9fced4fc48b1c5e59a4f7ee8e38
Replace us of v4 identifiers for object id mapping in qml compiler

The compiler is executed in a separate thread, at which point it doesn't work
very well to access the identifiers data structures of the engine on the main
thread, allocate new strings and potentially also trigger GC.

This patch moves the data into an intermediate QVector and constructs the
identifier hash on the receiving end in QQmlContextData::setIdPropertyData.

Change-Id: I676cf633cf1c55ee2e8f818e6963368ad55913cd
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
src/qml/qml/qqmlcompiler.cpp
src/qml/qml/qqmlcompiler_p.h
src/qml/qml/qqmlcontext.cpp
src/qml/qml/qqmlcontext_p.h