| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I3f9320f43d5d1fc5169a6c1b9dcea454974d6578
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
|
|
|
|
|
| |
Change-Id: Ie14bf4e3f1f1f7e3b9e5cf60e69a7572dd481006
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
|
|
|
|
|
| |
Change-Id: I46d453477a779a8db544ffc50d088fa13331da9b
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
|
|
|
|
|
| |
Change-Id: I3b1d8a2808782c9f34d50240000e20cb38d3680f
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
|
|
|
|
|
|
|
|
|
|
|
| |
All objects are added the list of visited objects, but only those
that were not recognized more specific than 'Object' are removed before
trying the fallback conversion. This prevents the fallback from working
as the algorithm will assume we are looping.
Task-number: QTBUG-39951
Change-Id: I1d538c452092485b371c335e53f16db162bd4fb1
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
We were passing on a PassRefPtr to multiple lower calls, since any
conversion from a PassRefPtr to a RefPtr will reset the PassRefPtr to
null, it should not be used for multiple calls.
Task-number: QTBUG-34278
Change-Id: I8d4bf28e25eb6e66baef38e0352c40a08f504538
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|
|
|
|
|
|
| |
Importing a new snapshot of webkit.
Change-Id: I2d01ad12cdc8af8cb015387641120a9d7ea5f10c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewed by Allan Sandfeld Jensen.
Don't leak the "length" string when executing a slot in JavaScript.
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtConnectionObject::execute):
Change-Id: I7e7cd3c0bbe18e5345d9f024a95284c2c8ef09e9
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141420 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=113434
Reviewed by Simon Hausmann.
We must take the JS API lock before accessing internal JS methods.
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::unwrapBoxedPrimitive):
(JSC::Bindings::getGregorianDateTimeUTC):
(JSC::Bindings::convertQVariantToValue):
Change-Id: Id06381d1a68da8e33020da7960e6b6943fd374f1
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149521 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=107950
Reviewed by Allan Sandfeld Jensen.
No new tests, bugfix, no behavioral change.
Make conversions from Javascript values to QLists take the maximum
recursion depth into consideration and check for objects that were
already visited. Otherwise, the conversion may recurse until the
stack is full and then cause a segmentation fault.
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::convertToList):
(JSC::Bindings::convertValueToQVariant):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141085 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change-Id: I598fee74144c5298f81952b122e07e7eac47a8db
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=104540
Patch by Simon Hausmann <simon.hausmann@digia.com>, Jedrzej Nowacki <jedrzej.nowacki@digia.com> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.
A data corruption exists in the QObject bridge when calling slots that
take a QVariant.
The calling convention for slots is that the void* parameter array must
contain pointers to the actually required destination argument type. If
a function takes an int for example, the corresponding entry in the
void* parameter array must be a pointer to an int that the moc
generated code then can "safely" cast to an int* and dereference.
Similarly if the function takes a QVariant it must be a pointer to a
QVariant.
We implement this calling convention by constructing QVariants of the
requested parameter types and passing the value of data() into the
void* parameter array. This works fine for all types except if the
requested type is a QVariant. In that case data() will _not_ return a
pointer that can later be safely casted to a QVariant pointer and
dereferenced. Instead we must use the address of our variant to ensure
a working cast.
Our auto tests cover this case, but they worked by accident because the
provided pointer when casted to a QVariant happens to have the correct
type id that doesn't produce the warning seen in the test case of the
provided example and the unit test just copies the QVariant and thus
pointer.
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtMethodMatchType::typeId): Replace string based meta
type id determination of QVariant with a quicker table lookup.
(JSC::Bindings::findMethodIndex): Remember the chosen (requested) types
and pass the pointer to the QVariant instead of its data() pointer if
requested.
(JSC::Bindings::QtRuntimeMethod::call): Fixed determination of whether
we need to convert a return value or not solely based on the return
type _specified_ in the meta method instead of the variant value
returned. The latter is not sufficient because a slot can return an
invalid variant, which is not the same as returning void. This was
triggered by an unit test that accidentally passed due to this memory
corruption in the first place.
Change-Id: Ie8ed983a7b7f530c038956c9f32eef3738a3cc9d
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131592)
New snapshot that includes the build fixes for Mac OS X 10.6 and earlier as well
as the previously cherry-picked changes
|
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131300)"
This reverts commit 5466563f4b5b6b86523e3f89bb7f77e5b5270c78.
Caused OOM issues on some CI machines :(
|
|
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131300)
WebKit update which introduces the QtWebKitWidgets module that contains the WK1
widgets based API. (In fact it renames QtWebKit to QtWebKitWidgets while we're
working on completing the entire split as part of
https://bugs.webkit.org/show_bug.cgi?id=99314
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@128073)
New snapshot
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@126545)
New snapshot with clang and python build fixes
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@126420)
New snapshot with OS X 10.6 build fix
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@126284)
New snapshot that includes MSVC 64-bit build fix
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@126147)
New snapshot including various build fixes for newer Qt 5
|
|
|
|
|
| |
We can now properly convert any QObject-derived object to the QObject*,
so we don't need to use the QWidgetStar.
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@125365)
New snapshot with build fixes for latest API changes in Qt and all WK1 Win MSVC fixes upstream
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@124002)
New snapshot with prospective Mountain Lion build fix
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@123477)
New snapshot that adapts to latest Qt API changes
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@122325)
New snapshot that should work with the latest Qt build system changes
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@120813)
New snapshot with Windows build fixes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=88993
Reviewed by Kenneth Rohde Christiansen.
Source/WebCore:
Replace the use of QScriptEngine::ValueOwnership with an enum local
to the class where it is used (QtInstance).
* Target.pri:
* bindings/js/ScriptControllerQt.cpp:
(WebCore::ScriptController::createScriptInstanceForWidget):
* bridge/qt/qt_instance.cpp:
(JSC::Bindings::QtInstance::QtInstance):
(JSC::Bindings::QtInstance::~QtInstance):
(JSC::Bindings::QtInstance::getQtInstance):
* bridge/qt/qt_instance.h:
(QtInstance):
(JSC::Bindings::QtInstance::create):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::convertQVariantToValue):
* bridge/qt/qt_runtime_qt4.cpp:
(JSC::Bindings::convertQVariantToValue):
Source/WebKit/qt:
When building against Qt 5, replace the use of QScriptEngine::ValueOwnership with
a (compatible) QWebFrame::ValueOwnership enum.
* Api/qwebframe.cpp:
(qtSenderCallback):
(QWebFrame::addToJavaScriptWindowObject):
* Api/qwebframe.h:
* tests/qobjectbridge/tst_qobjectbridge.cpp:
(tst_QObjectBridge::arrayObjectEnumerable):
(tst_QObjectBridge::ownership):
(tst_QObjectBridge::qObjectWrapperWithSameIdentity):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@118629)
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@118516)
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@117578)
Weekly snapshot
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@116286)
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@108790)
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@106560)
|
|
(http://svn.webkit.org/repository/webkit/trunk@104285)
|