Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.6.0, 5.6.1, 5.7.0
-
Windows 7
Description
[REG 5.5.1->5.6.0]: Calling JSON.stringify() can cause an assert. This is reportedly more likely to happen with a 32bit version of an application, but it has been reported to happen with 64bit applications too.
> Qt5Cored.dll!qt_message_fatal(QtMsgType __formal, const QMessageLogContext & context, const QString & message) Line 1641 C++ Qt5Cored.dll!QMessageLogger::fatal(const char * msg, ...) Line 790 C++ Qt5Cored.dll!qt_assert(const char * assertion, const char * file, int line) Line 3018 C++ Qt5Qmld.dll!removeFromPropertyData(QV4::Object * object, int idx, bool accessor) Line 174 C++ Qt5Qmld.dll!QV4::InternalClass::removeMember(QV4::Object * object, QV4::Identifier * id) Line 351 C++ Qt5Qmld.dll!QV4::Object::internalDeleteProperty(QV4::String * name) Line 839 C++ Qt5Qmld.dll!QV4::Object::deleteProperty(QV4::Managed * m, QV4::String * name) Line 446 C++ Qt5Qmld.dll!QV4::Object::deleteProperty(QV4::String * name) Line 310 C++ Qt5Qmld.dll!QV4::Runtime::deleteMemberString(QV4::ExecutionEngine * engine, const QV4::Value & base, QV4::String * name) Line 304 C++ Qt5Qmld.dll!QV4::Runtime::deleteMember(QV4::ExecutionEngine * engine, const QV4::Value & base, int nameIndex) Line 295 C++ [External Code] [Frames below may be incorrect and/or missing] Qt5Qmld.dll!QV4::SimpleScriptFunction::call(const QV4::Managed * that, QV4::CallData * callData) Line 576 C++ Qt5Qmld.dll!QV4::Object::call(QV4::CallData * d) Line 324 C++ Qt5Qmld.dll!QV4::Runtime::callActivationProperty(QV4::ExecutionEngine * engine, int nameIndex, QV4::CallData * callData) Line 948 C++ [External Code] Qt5Qmld.dll!QV4::SimpleScriptFunction::call(const QV4::Managed * that, QV4::CallData * callData) Line 576 C++ Qt5Qmld.dll!QV4::Object::call(QV4::CallData * d) Line 324 C++ Qt5Qmld.dll!QQmlJavaScriptExpression::evaluate(QV4::CallData * callData, bool * isUndefined) Line 189 C++ Qt5Qmld.dll!QQmlBoundSignalExpression::evaluate(void * * a) Line 242 C++ Qt5Qmld.dll!QQmlBoundSignal_callback(QQmlNotifierEndpoint * e, void * * a) Line 358 C++ Qt5Qmld.dll!QQmlNotifier::emitNotify(QQmlNotifierEndpoint * endpoint, void * * a) Line 94 C++ Qt5Qmld.dll!QQmlData::signalEmitted(QAbstractDeclarativeData * __formal, QObject * object, int index, void * * a) Line 772 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, int signalOffset, int local_signal_index, void * * argv) Line 3616 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, const QMetaObject * m, int local_signal_index, void * * argv) Line 3595 C++ Qt5Quickd.dll!QQuickMouseArea::clicked(QQuickMouseEvent * _t1) Line 644 C++ Qt5Quickd.dll!QQuickMouseArea::setPressed(Qt::MouseButton button, bool p) Line 1200 C++ Qt5Quickd.dll!QQuickMouseArea::mouseReleaseEvent(QMouseEvent * event) Line 779 C++ Qt5Quickd.dll!QQuickItem::event(QEvent * ev) Line 7521 C++ Qt5Cored.dll!QCoreApplicationPrivate::notify_helper(QObject * receiver, QEvent * event) Line 1150 C++ Qt5Cored.dll!doNotify(QObject * receiver, QEvent * event) Line 1090 C++ Qt5Cored.dll!QCoreApplication::notify(QObject * receiver, QEvent * event) Line 1076 C++ Qt5Guid.dll!QGuiApplication::notify(QObject * object, QEvent * event) Line 1619 C++ Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1015 C++ Qt5Cored.dll!QCoreApplication::sendEvent(QObject * receiver, QEvent * event) Line 225 C++ Qt5Quickd.dll!QQuickWindow::sendEvent(QQuickItem * item, QEvent * e) Line 2675 C++ Qt5Quickd.dll!QQuickWindowPrivate::deliverMouseEvent(QMouseEvent * event) Line 1591 C++ Qt5Quickd.dll!QQuickWindow::mouseReleaseEvent(QMouseEvent * event) Line 1631 C++ Qt5Guid.dll!QWindow::event(QEvent * ev) Line 2009 C++ Qt5Quickd.dll!QQuickWindow::event(QEvent * e) Line 1493 C++ Qt5Cored.dll!QCoreApplicationPrivate::notify_helper(QObject * receiver, QEvent * event) Line 1150 C++ Qt5Cored.dll!doNotify(QObject * receiver, QEvent * event) Line 1090 C++ Qt5Cored.dll!QCoreApplication::notify(QObject * receiver, QEvent * event) Line 1076 C++ Qt5Guid.dll!QGuiApplication::notify(QObject * object, QEvent * event) Line 1619 C++ Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1015 C++ Qt5Cored.dll!QCoreApplication::sendSpontaneousEvent(QObject * receiver, QEvent * event) Line 228 C++ Qt5Guid.dll!QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent * e) Line 1879 C++ Qt5Guid.dll!QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent * e) Line 1663 C++ Qt5Guid.dll!QWindowSystemInterface::sendWindowSystemEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 648 C++ qwindowsd.dll!QWindowsGuiEventDispatcher::sendPostedEvents() Line 76 C++ Qt5Cored.dll!qt_internal_proc(HWND__ * hwnd, unsigned int message, unsigned int wp, long lp) Line 438 C++ [External Code] Qt5Cored.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 838 C++ qwindowsd.dll!QWindowsGuiEventDispatcher::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 68 C++ Qt5Cored.dll!QEventLoop::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 129 C++ Qt5Cored.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 204 C++ Qt5Cored.dll!QCoreApplication::exec() Line 1285 C++ Qt5Guid.dll!QGuiApplication::exec() Line 1610 C++ JSONTestApp.exe!main(int argc, char * * argv) Line 11 C++ JSONTestApp.exe!WinMain(HINSTANCE__ * __formal, HINSTANCE__ * __formal, char * __formal, int __formal) Line 113 C++ [External Code]
Asserts with "to >= inlineSize && from > to"
The example attached reproduces it consistently at least with 32bit on Windows.
Attachments
Issue Links
- duplicates
-
QTBUG-51756 Runtime error on iOS when adding/removing properties of JS objects
-
- Closed
-