Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
dev
-
None
-
96e3d06b6f216fb802acc6dd1a7dca113f782508
Description
a83a818791bc88725e07ea41b7c5fa50828e6b24 apparently introduced the possibility of crashs.
"bt -full\n" >~"#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44\n" >~" tid = <optimized out>\n" >~" ret = 0\n" >~" pd = <optimized out>\n" >~" old_mask = {__val = {139819439088448}}\n" >~" ret = <optimized out>\n" >~" pd = <optimized out>\n" >~" old_mask = <optimized out>\n" >~" ret = <optimized out>\n" >~" tid = <optimized out>\n" >~" ret = <optimized out>\n" >~" resultvar = <optimized out>\n" >~" resultvar = <optimized out>\n" >~" __arg3 = <optimized out>\n" >~" __arg2 = <optimized out>\n" >~" __arg1 = <optimized out>\n" >~" _a3 = <optimized out>\n" >~" _a2 = <optimized out>\n" >~" _a1 = <optimized out>\n" >~" __futex = <optimized out>\n" >~" resultvar = <optimized out>\n" >~" __arg3 = <optimized out>\n" >~" __arg2 = <optimized out>\n" >~" __arg1 = <optimized out>\n" >~" _a3 = <optimized out>\n" >~" _a2 = <optimized out>\n" >~" _a1 = <optimized out>\n" >~" __futex = <optimized out>\n" >~" __private = <optimized out>\n" >~" __oldval = <optimized out>\n" >~"#1 __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78\n" >~"No locals.\n" >~"#2 __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89\n" >~"No locals.\n" >~"#3 0x00007f2b99e3c406 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26\n" >~" ret = <optimized out>\n" >~"#4 0x00007f2b99e2287c in __GI_abort () at ./stdlib/abort.c:79\n" >~" save_stage = 1\n" >~" act = {__sigaction_handler = {sa_handler = 0x20, sa_sigaction = 0x20}, sa_mask = {__val = {139820065816080, 98, 6028636432318541312, 8589934594, 139825251348444, 139819439088480, 139825251348467, 139819439088575, 139819439088592, 139819439088512, 139825251351374, 139819439088575, 139819439088592, 139819439088640, 139825251348689, 0}}, sa_flags = 1073734704, sa_restorer = 0x7f2a3fffe580}\n" >~"#5 0x00007f2b9a6ef52c in qAbort () at /data/dev/qt-6/qtbase/src/corelib/global/qglobal.cpp:161\n" >~"No locals.\n" >~"#6 0x00007f2b9a6ff87c in qt_message_fatal<QString&> (context=..., message=...) at /data/dev/qt-6/qtbase/src/corelib/global/qlogging.cpp:2028\n" >~"No locals.\n" >~"#7 0x00007f2b9a6f9dc0 in qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, context=..., msg=0x7f2b9ac88880 \"ASSERT: \\\"%s\\\" in file %s, line %d\", ap=0x7f2a3fffe480) at /data/dev/qt-6/qtbase/src/corelib/global/qlogging.cpp:377\n" >~" buf = {d = {d = 0x7f2a655afcf0, ptr = 0x7f2a655afd00 u\"ASSERT: \\\"n <= size() - pos\\\" in file /data/dev/qt-6/qtbase/src/corelib/text/qstringview.h, line 423\", size = 98}, static _empty = 0 u'\\000'}\n" >~"#8 0x00007f2b9a6fb498 in QMessageLogger::fatal (this=0x7f2a3fffe580, msg=0x7f2b9ac88880 \"ASSERT: \\\"%s\\\" in file %s, line %d\") at /data/dev/qt-6/qtbase/src/corelib/global/qlogging.cpp:900\n" >~" ap = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7f2a3fffe560, reg_save_area = 0x7f2a3fffe4a0}}\n" >~"#9 0x00007f2b9a6edb59 in qt_assert (assertion=0x7f2b9c1bc27b \"n <= size() - pos\", file=0x7f2b9c1bc228 \"/data/dev/qt-6/qtbase/src/corelib/text/qstringview.h\", line=423) at /data/dev/qt-6/qtbase/src/corelib/global/qassert.cpp:68\n" >~"No locals.\n" >~"#10 0x00007f2b9b77074d in QStringView::verify (n=4, pos=92202, this=0x7f2a3fffe650) at /data/dev/qt-6/qtbase/src/corelib/text/qstringview.h:423\n" >~"No locals.\n" >~"#11 QStringView::sliced (this=0x7f2a3fffe650, pos=92202, n=4) at /data/dev/qt-6/qtbase/src/corelib/text/qstringview.h:220\n" >~"No locals.\n" >~"#12 0x00007f2b9bbd4967 in QTextDocumentPrivate::plainText (this=0x7f2a141ad900) at /data/dev/qt-6/qtbase/src/gui/text/qtextdocument_p.cpp:1311\n" >~" f = 0x563dda151430\n" >~" __for_range = @0x7f2a141ad900: {<QObjectPrivate> = {<QObjectData> = {_vptr.QObjectData = 0x7f2b9c674da0 <vtable for QTextDocumentPrivate+16>, q_ptr = 0x563dd7519158, parent = 0x563dc8543a40, children = {<QListSpecialMethods<QObject*>> = {<QListSpecialMethodsBase<QObject*>> = {<No data fields>}, <No data fields>}, d = {d = 0x563dd2fbee80, ptr = 0x563dd2fbee90, size = 2}}, isWidget = 0, blockSig = 0, wasDeleted = 0, isDeletingChildren = 0, sendChildEvents = 1, receiveChildEvents = 1, isWindow = 0, deleteLaterCalled = 0, isQuickItem = 0, willBeWidget = 0, wasWidget = 0, receiveParentEvents = 0, unused = 208, postedEvents = {<QAtomicInteger<int>> = {<QBasicAtomicInteger<int>> = {_q_value = std::atomic<int> = { 0 }}, <No data fields>}, <No data fields>}, metaObject = 0x0, bindingStorage = {d = 0x0, bindingStatus = 0x7f2b9c69e3e0}}, extraData = 0x563dd97a2b60, threadData = {<QBasicAtomicPointer<QThreadData>> = {_q_value = std::atomic<QThreadData *> = { 0x563dc5f5b780 }}, <No data fields>}, connections = {<QBasicAtomicPointer<QObjectPrivate::ConnectionData>> = {_q_value = std::atomic<QObjectPrivate::ConnectionData *> = { 0x563dd6d6a3d0 }}, <No data fields>}, {currentChildBeingDeleted = 0x0, declarativeData = 0x0}, sharedRefcount = {<QBasicAtomicPointer<QtSharedPointer::ExternalRefCountData>> = {_q_value = std::atomic<QtSharedPointer::ExternalRefCountData *> = { 0x563dd08f7f00 }}, <No data fields>}}, wasUndoAvailable = true, wasRedoAvailable = false, text = {d = {d = 0x563dda0ac370, ptr = 0x563dda0ac380 u\"\\x2029// Copyright (C) 2016 The Qt Company Ltd.\\n// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0\\n\\n#include \\\"icore.h\\\"\\n\\n#include \\\"actionmanager/actioncontainer.h\\\"\\n#include \\\"actionmanager/actionmanager.h\\\"\\n#include \\\"actionmanager/command.h\\\"\\n#include \\\"coreicons.h\\\"\\n#include \\\"coreplugintr.h\\\"\\n#include \\\"coreplugintr.h\\\"\\n#include \\\"dialogs/externaltoolconfig.h\\\"\\n#include \\\"dialogs/settingsdialog.h\\\"\\n#include \\\"dialogs/shortcutsettings.h\\\"\\n#include \\\"documentmanager.h\\\"\\n#include \\\"editormanager/documentmodel_p.h\\\"\\n#include \\\"editormanager/editormanager.h\\\"\\n#include \\\"editormanager/editormanager_p.h\\\"\\n#include \\\"editormanager/ieditor.h\\\"\\n#include \\\"editormanager/ieditorfactory.h\\\"\\n#include \\\"editormanager/systemeditor.h\\\"\\n#include \\\"externaltoolmanager.h\\\"\\n#include \\\"fancytabwidget.h\\\"\\n#include \\\"fileutils.h\\\"\\n#include \\\"find/basetextfind.h\\\"\\n#include \\\"findplaceholder.h\\\"\\n#include \\\"helpmanager.h\\\"\\n#include \\\"icore.h\\\"\\n#include \\\"idocumentfactory.h\\\"\\n#include \\\"inavigationwidgetfactory.h\\\"\\n#include \\\"iwizardfactory.h\\\"\\n#include \\\"jsexpander.h\\\"\\n#include \\\"loggingviewer.h\\\"\\n#include \\\"manhattanstyle.h\\\"\\n#include \\\"messagemanager.h\\\"\\n#include \\\"mimetypesettings.h\\\"\\n#include \\\"modemanager.h\\\"\\n#include \\\"navigationwidget.h\\\"\\n#include \\\"outputpanemanager.h\\\"\\n#include \\\"plugindialog.h\\\"\\n#include \\\"progressmanager/progressmanager_p.h\\\"\\n#include \\\"progressmanager/progressview.h\\\"\\n#include \\\"rightpane.h\\\"\\n#include \\\"statusbarmanager.h\\\"\\n#include \\\"systemsettings.h\\\"\\n#include \\\"vcsmanager.h\\\"\\n#include \\\"versiondialog.h\\\"\\n#include \\\"windowsupport.h\\\"\\n\\n#include <extensionsystem/pluginmanager.h>\\n\\n#include <utils/algorithm.h>\\n#include <utils/appinfo.h>\\n#include <utils/checkablemessagebox.h>\\n#include <utils/environment.h>\\n#include <utils/fileutils.h>\\n#include <utils/fsengine/fileiconprovider.h>\\n#include <utils/fsengine/fsengine.h>\\n#include <utils/historycompleter.h>\\n#include <utils/hostosinfo.h>\\n#include <utils/mimeutils.h>\\n#include <utils/proxyaction.h>\\n#include <utils/qtcassert.h>\\n#include <utils/stringutils.h>\\n#include <utils/stylehelper.h>\\n#include <utils/terminalcommand.h>\\n#include <utils/theme/theme.h>\\n#include <utils/touchbar/touchbar.h>\\n#include <utils/utilsicons.h>\\n\\n#include <nanotrace/nanotrace.h>\\n\\n#include <QActionGroup>\\n#include <QApplication>\\n#include <QCloseEvent>\\n#include <QColorDialog>\\n#include <QComboBox>\\n#include <QDebug>\\n#include <QDialogButtonBox>\\n#include <QLibraryInfo>\\n#include <QMenu>\\n#include <QMenuBar>\\n#include <QMessageBox>\\n#include <QPrinter>\\n#include <QStandardPaths>\\n#include <QStatusBar>\\n#include <QStyleFactory>\\n#include <QSysInfo>\\n#include <QTextBrowser>\\n#include <QTimer>\\n#include <QToolButton>\\n#include <QVersionNumber>\\n\\n#ifdef Q_OS_LINUX\\n#include <malloc.h>\\n#endif\\n\\n/*!\\n \\\\namespace Core\\n \\\\inmodule QtCreator\\n \\\\brief The Core namespace contains all classes that make up the Core plugin\\n which constitute the basic functionality of \\\\QC.\\n*/\\n\\n/*!\\n \\\\enum Utils::FindFlag\\n This enum holds the find flags.\\n\\n \\\\value FindBackward\\n\", ' ' <repeats 11 times>, \"Searches backwards.\\n \\\\value FindCaseSensitively\\n\", ' ' <repeats 11 times>, \"Considers case when searching.\\n \\\\value FindWholeWords\\n\", ' ' <repeats 11 times>, \"Finds only whole words.\\n \\\\value FindRegularExpression\\n\", ' ' <repeats 11 times>, \"Uses a regular epression as a search term.\\n \\\\value FindPreserveCase\\n\", ' ' <repeats 11 times>, \"Preserves the case when replacing search terms.\\n*/\\n\\n/*!\\n \\\\enum Core::ICore::ContextPriority\\n\\n This enum defines the priority of additional contexts.\\n\\n \\\\value High\\n\", ' ' <repeats 11 times>, \"Additional contexts that have higher priority than contexts from\\n\", ' ' <repeats 11 times>, \"Core::IContext instances.\\n \\\\value Low\\n\", ' ' <repeats 11 times>, \"Additional contexts that have lower priority than contexts from\\n\", ' ' <repeats 11 times>, \"Core::IContext instances.\\n\\n \\\\sa Core::ICore::updateAdditionalContexts()\\n*/\\n\\n/*!\\n \\\\enum Core::SaveSettingsReason\\n \\\\internal\\n*/\\n\\n/*!\\n \\\\namespace Core::Internal\\n \\\\internal\\n*/\\n\\n/*!\\n \\\\class Core::ICore\\n \\\\inheaderfile coreplugin/icore.h\\n \\\\inmodule QtCreator\\n \\\\ingroup mainclasses\\n\\n \\\\brief The ICore class allows access to the different parts that make up\\n the basic functionality of \\\\QC.\\n\\n You should never create a subclass of this interface. The one and only\\n instance is created by the Core plugin. You can access this instance\\n from your plugin through instance().\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::coreAboutToOpen()\\n\\n Indicates that all plugins have been loaded and the main window is about to\\n be shown.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::coreOpened()\\n Indicates that all plugins have been loaded and the main window is shown.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::saveSettingsRequested(Core::ICore::SaveSettingsReason reason)\\n Signals that the user has requested that the global settings\\n should be saved to disk for a \\\\a reason.\\n\\n At the moment that happens when the application is closed, and on \\\\uicontrol{Save All}.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::coreAboutToClose()\\n Enables plugins to perform some pre-end-of-life actions.\\n\\n The application is guaranteed to shut down after this signal is emitted.\\n It is there as an addition to the usual plugin lifecycle functions, namely\\n \\\\c IPlugin::aboutToShutdown(), just for convenience.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::contextAboutToChange(const QList<Core::IContext *> &context)\\n Indicates that a new \\\\a context will shortly become the current context\\n (meaning that its widget got focus).\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::contextChanged(const Core::Context &context)\\n Indicates that a new \\\\a context just became the current context. This includes the context\\n from the focus object as well as the additional context.\\n*/\\n\\n#include \\\"dialogs/newdialogwidget.h\\\"\\n#include \\\"dialogs/newdialog.h\\\"\\n#include \\\"iwizardfactory.h\\\"\\n#include \\\"documentmanager.h\\\"\\n\\n#include <utils/hostosinfo.h>\\n\\n#include <QCoreApplication>\\n#include <QDebug>\\n#include <QDir>\\n#include <QMessageBox>\\n#include <QPushButton>\\n#include <QStatusBar>\\n\\nusing namespace Core::Internal;\\nusing namespace ExtensionSystem;\\nusing namespace Utils;\\n\\nnamespace Core {\\n\\nconst char settingsGroup[] = \\\"MainWindow\\\";\\nconst char colorKey[] = \\\"Color\\\";\\nconst char windowGeometryKey[] = \\\"WindowGeometry\\\";\\nconst char windowStateKey[] = \\\"WindowState\\\";\\nconst char modeSelectorLayoutKey[] = \\\"ModeSelectorLayout\\\";\\nconst char menubarVisibleKey[] = \\\"MenubarVisible\\\";\\n\\nnamespace Internal {\\n\\nclass MainWindow : public AppMainWindow\\n{\\npublic:\\n MainWindow()\\n {\\n setWindowTitle(QGuiApplication::applicationDisplayName());\\n setDockNestingEnabled(true);\\n setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);\\n setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);\\n }\\n\\nprivate:\\n void closeEvent(QCloseEvent *event) override;\\n void keyPressEvent(QKeyEvent *event) override;\\n void mousePressEvent(QMouseEvent *event) override;\\n};\\n\\nstatic QColor s_overrideColor;\\n\\n// The Core Singleton\\nstatic ICore *m_core = nullptr;\\n\\nstatic NewDialog *defaultDialogFactory(QWidget *parent)\\n{\\n return new NewDialogWidget(parent);\\n}\\nclass ICorePrivate : public QObject\\n{\\npublic:\\n ICorePrivate() {}\\n\\n ~ICorePrivate();\\n\\n void init();\\n\\n static void openFile();\\n void aboutToShowRecentFiles();\\n\\n static void setFocusToEditor();\\n void aboutQtCreator();\\n void aboutPlugins();\\n void changeLog();\\n void contact();\\n void updateFocusWidget(QWidget *old, QWidget *now);\\n NavigationWidget *navigationWidget(Side side) const;\\n void setSidebarVisible(bool visible, Side side);\\n void destroyVersionDialog();\\n void openDroppedFiles(const QList<Utils::DropSupport::FileSpec> &files);\\n void restoreWindowState();\\n\\n void openFileFromDevice();\\n\\n void updateContextObject(const QList<IContext *> &context);\\n void updateContext();\\n\\n void registerDefaultContainers();\\n void registerDefaultActions();\\n void registerModeSelectorStyleActions();\\n\\n void readSettings();\\n void saveWindowSettings();\\n\\n void updateModeSelectorStyleMenu();\\n\\n MainWindow *m_mainwindow = nullptr;\\n QTimer m_trimTimer;\\n QStringList m_aboutInformation;\\n Context m_highPrioAdditionalContexts;\\n Context m_lowPrioAdditionalContexts{Constants::C_GLOBAL};\\n mutable QPrinter *m_printer = nullptr;\\n WindowSupport *m_windowSupport = nullptr;\\n EditorManager *m_editorManager = nullptr;\\n ExternalToolManager *m_externalToolManager = nullptr;\\n MessageManager *m_messageManager = nullptr;\\n ProgressManagerPrivate *m_progressManager = nullptr;\\n JsExpander *m_jsExpander = nullptr;\\n VcsManager *m_vcsManager = nullptr;\\n ModeManager *m_modeManager = nullptr;\\n FancyTabWidget *m_modeStack = nullptr;\\n NavigationWidget *m_leftNavigationWidget = nullptr;\\n NavigationWidget *m_rightNavigationWidget = nullptr;\\n RightPaneWidget *m_rightPaneWidget = nullptr;\\n VersionDialog *m_versionDialog = nullptr;\\n\\n QList<IContext *> m_activeContext;\\n\\n std::unordered_map<QWidget *, IContext *> m_contextWidgets;\\n\\n ShortcutSettings *m_shortcutSettings = nullptr;\\n ToolSettings *m_toolSettings = nullptr;\\n MimeTypeSettings *m_mimeTypeSettings = nullptr;\\n SystemEditor *m_systemEditor = nullptr;\\n\\n // actions\\n QAction *m_focusToEditor = nullptr;\\n QAction *m_newAction = nullptr;\\n QAction *m_openAction = nullptr;\\n QAction *m_openWithAction = nullptr;\\n QAction *m_openFromDeviceAction = nullptr;\\n QAction *m_saveAllAction = nullptr;\\n QAction *m_exitAction = nullptr;\\n QAction *m_optionsAction = nullptr;\\n QAction *m_loggerAction = nullptr;\\n QAction *m_toggleLeftSideBarAction = nullptr;\\n QAction *m_toggleRightSideBarAction = nullptr;\\n QAction *m_toggleMenubarAction = nullptr;\\n QAction *m_cycleModeSelectorStyleAction = nullptr;\\n QAction *m_setModeSelectorStyleIconsAndTextAction = nullptr;\\n QAction *m_setModeSelectorStyleHiddenAction = nullptr;\\n QAction *m_setModeSelectorStyleIconsOnlyAction = nullptr;\\n QAction *m_themeAction = nullptr;\\n\\n QToolButton *m_toggleLeftSideBarButton = nullptr;\\n QToolButton *m_toggleRightSideBarButton = nullptr;\\n\"..., size = 92206}, static _empty = 0 u'\\000'}, unreachableCharacterCount = 0, undoStack = {<QListSpecialMethods<QTextUndoCommand>> = {<QListSpecialMethodsBase<QTextUndoCommand>> = {<No data fields>}, <No data fields>}, d = {d = 0x563dd2ffd7b0, ptr = 0x563dd2ffd7c0, size = 36}}, undoEnabled = true, undoState = 36, revision = 41, modifiedState = 8, modified = true, editBlock = 0, editBlockCursorPosition = -1, docChangeFrom = 60595, docChangeOldLength = 0, docChangeLength = 1, framesDirty = false, formats = {formats = {<QListSpecialMethods<QTextFormat>> = {<QListSpecialMethodsBase<QTextFormat>> = {<No data fields>}, <No data fields>}, d = {d = 0x563dd1a89ee0, ptr = 0x563dd1a89ef0, size = 23}}, objFormats = {<QListSpecialMethods<int>> = {<QListSpecialMethodsBase<int>> = {<No data fields>}, <No data fields>}, d = {d = 0x563dd7aca7f0, ptr = 0x563dd7aca800, size = 1}}, hashes = {d = 0x563dd8ebd910, m_size = 23}, defaultFnt = {d = {d = 0x563dd19c92a0}, resolve_mask = 131194}, defaultFormat = {<QTextFormat> = {d = {d = 0x0}, format_type = 2}, <No data fields>}}, rtFrame = 0x563dd74f7930, lout = 0x563dd77f2d20, fragments = {data = {{head = 0x563dda12c350, fragments = 0x563dda12c350}}}, blocks = {data = {{head = 0x563dda0ec380, fragments = 0x563dda0ec380}}}, initialBlockCharFormatIndex = 0, cursors = {q_hash = {d = 0x563dda20c110}}, objects = {d = {d = 0x563dd2bb6580}}, resources = {d = {d = 0x0}}, cachedResources = {d = {d = 0x0}}, resourceProvider = {<std::_Maybe_unary_or_binary_function<QVariant, QUrl const&>> = {<std::unary_function<QUrl const&, QVariant>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = '\\000' <repeats 15 times>}, _M_manager = 0x0}, _M_invoker = 0x0}, defaultStyleSheet = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\\000'}, lastBlockCount = 2546, inContentsChange = true, layoutEnabled = true, defaultTextOption = {align = 1, wordWrap = 0, design = 0, direction = 0, unused = 0, f = 2147483653, tab = 31.1875, d = 0x0}, defaultCursorMoveStyle = Qt::LogicalMoveStyle, parsedDefaultStyleSheet = {styleRules = {<QListSpecialMethods<QCss::StyleRule>> = {<QListSpecialMethodsBase<QCss::StyleRule>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}}, mediaRules = {<QListSpecialMethods<QCss::MediaRule>> = {<QListSpecialMethodsBase<QCss::MediaRule>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}}, pageRules = {<QListSpecialMethods<QCss::PageRule>> = {<QListSpecialMethodsBase<QCss::PageRule>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}}, importRules = {<QListSpecialMethods<QCss::ImportRule>> = {<QListSpecialMethodsBase<QCss::ImportRule>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}}, origin = QCss::StyleSheetOrigin_Unspecified, depth = 0, nameIndex = {d = 0x0, m_size = 0}, idIndex = {d = 0x0, m_size = 0}}, maximumBlockCount = 0, needsEnsureMaximumBlockCount = 0, blockCursorAdjustment = 0, pageSize = {wd = -1, ht = -1}, title = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\\000'}, url = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 u'\\000'}, cssMedia = {d = {d = 0x0, ptr = 0x7f2b9c22751a u\"screen\", size = 6}, static _empty = 0 u'\\000'}, indentWidth = 40, documentMargin = 4, baseUrl = {d = 0x0}}\n" >~" __for_begin = {pt = 0x7f2a141ada58, n = 4743}\n" >~" __for_end = {pt = 0x7f2a141ada58, n = 0}\n" >~" result = {d = {d = 0x7f2a661e0f20, ptr = 0x7f2a661e0f30 u\"// Copyright (C) 2016 The Qt Company Ltd.\\x2029// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0\\x2029\\x2029#include \\\"icore.h\\\"\\x2029\\x2029#include \\\"actionmanager/actioncontainer.h\\\"\\x2029#include \\\"actionmanager/actionmanager.h\\\"\\x2029#include \\\"actionmanager/command.h\\\"\\x2029#include \\\"coreicons.h\\\"\\x2029#include \\\"coreplugintr.h\\\"\\x2029#include \\\"coreplugintr.h\\\"\\x2029#include \\\"dialogs/externaltoolconfig.h\\\"\\x2029#include \\\"dialogs/settingsdialog.h\\\"\\x2029#include \\\"dialogs/shortcutsettings.h\\\"\\x2029#include \\\"documentmanager.h\\\"\\x2029#include \\\"editormanager/documentmodel_p.h\\\"\\x2029#include \\\"editormanager/editormanager.h\\\"\\x2029#include \\\"editormanager/editormanager_p.h\\\"\\x2029#include \\\"editormanager/ieditor.h\\\"\\x2029#include \\\"editormanager/ieditorfactory.h\\\"\\x2029#include \\\"editormanager/systemeditor.h\\\"\\x2029#include \\\"externaltoolmanager.h\\\"\\x2029#include \\\"fancytabwidget.h\\\"\\x2029#include \\\"fileutils.h\\\"\\x2029#include \\\"find/basetextfind.h\\\"\\x2029#include \\\"findplaceholder.h\\\"\\x2029#include \\\"helpmanager.h\\\"\\x2029#include \\\"icore.h\\\"\\x2029#include \\\"idocumentfactory.h\\\"\\x2029#include \\\"inavigationwidgetfactory.h\\\"\\x2029#include \\\"iwizardfactory.h\\\"\\x2029#include \\\"jsexpander.h\\\"\\x2029#include \\\"loggingviewer.h\\\"\\x2029#include \\\"manhattanstyle.h\\\"\\x2029#include \\\"messagemanager.h\\\"\\x2029#include \\\"mimetypesettings.h\\\"\\x2029#include \\\"modemanager.h\\\"\\x2029#include \\\"navigationwidget.h\\\"\\x2029#include \\\"outputpanemanager.h\\\"\\x2029#include \\\"plugindialog.h\\\"\\x2029#include \\\"progressmanager/progressmanager_p.h\\\"\\x2029#include \\\"progressmanager/progressview.h\\\"\\x2029#include \\\"rightpane.h\\\"\\x2029#include \\\"statusbarmanager.h\\\"\\x2029#include \\\"systemsettings.h\\\"\\x2029#include \\\"vcsmanager.h\\\"\\x2029#include \\\"versiondialog.h\\\"\\x2029#include \\\"windowsupport.h\\\"\\x2029\\x2029#include <extensionsystem/pluginmanager.h>\\x2029\\x2029#include <utils/algorithm.h>\\x2029#include <utils/appinfo.h>\\x2029#include <utils/checkablemessagebox.h>\\x2029#include <utils/environment.h>\\x2029#include <utils/fileutils.h>\\x2029#include <utils/fsengine/fileiconprovider.h>\\x2029#include <utils/fsengine/fsengine.h>\\x2029#include <utils/historycompleter.h>\\x2029#include <utils/hostosinfo.h>\\x2029#include <utils/mimeutils.h>\\x2029#include <utils/proxyaction.h>\\x2029#include <utils/qtcassert.h>\\x2029#include <utils/stringutils.h>\\x2029#include <utils/stylehelper.h>\\x2029#include <utils/terminalcommand.h>\\x2029#include <utils/theme/theme.h>\\x2029#include <utils/touchbar/touchbar.h>\\x2029#include <utils/utilsicons.h>\\x2029\\x2029#include <nanotrace/nanotrace.h>\\x2029\\x2029#include <QActionGroup>\\x2029#include <QApplication>\\x2029#include <QCloseEvent>\\x2029#include <QColorDialog>\\x2029#include <QComboBox>\\x2029#include <QDebug>\\x2029#include <QDialogButtonBox>\\x2029#include <QLibraryInfo>\\x2029#include <QMenu>\\x2029#include <QMenuBar>\\x2029#include <QMessageBox>\\x2029#include <QPrinter>\\x2029#include <QStandardPaths>\\x2029#include <QStatusBar>\\x2029#include <QStyleFactory>\\x2029#include <QSysInfo>\\x2029#include <QTextBrowser>\\x2029#include <QTimer>\\x2029#include <QToolButton>\\x2029#include <QVersionNumber>\\x2029\\x2029#ifdef Q_OS_LINUX\\x2029#include <malloc.h>\\x2029#endif\\x2029\\x2029/*!\\x2029 \\\\namespace Core\\x2029 \\\\inmodule QtCreator\\x2029 \\\\brief The Core namespace contains all classes that make up the Core plugin\\x2029 which constitute the basic functionality of \\\\QC.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\enum Utils::FindFlag\\x2029 This enum holds the find flags.\\x2029\\x2029 \\\\value FindBackward\\x2029\", ' ' <repeats 11 times>, \"Searches backwards.\\x2029 \\\\value FindCaseSensitively\\x2029\", ' ' <repeats 11 times>, \"Considers case when searching.\\x2029 \\\\value FindWholeWords\\x2029\", ' ' <repeats 11 times>, \"Finds only whole words.\\x2029 \\\\value FindRegularExpression\\x2029\", ' ' <repeats 11 times>, \"Uses a regular epression as a search term.\\x2029 \\\\value FindPreserveCase\\x2029\", ' ' <repeats 11 times>, \"Preserves the case when replacing search terms.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\enum Core::ICore::ContextPriority\\x2029\\x2029 This enum defines the priority of additional contexts.\\x2029\\x2029 \\\\value High\\x2029\", ' ' <repeats 11 times>, \"Additional contexts that have higher priority than contexts from\\x2029\", ' ' <repeats 11 times>, \"Core::IContext instances.\\x2029 \\\\value Low\\x2029\", ' ' <repeats 11 times>, \"Additional contexts that have lower priority than contexts from\\x2029\", ' ' <repeats 11 times>, \"Core::IContext instances.\\x2029\\x2029 \\\\sa Core::ICore::updateAdditionalContexts()\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\enum Core::SaveSettingsReason\\x2029 \\\\internal\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\namespace Core::Internal\\x2029 \\\\internal\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\class Core::ICore\\x2029 \\\\inheaderfile coreplugin/icore.h\\x2029 \\\\inmodule QtCreator\\x2029 \\\\ingroup mainclasses\\x2029\\x2029 \\\\brief The ICore class allows access to the different parts that make up\\x2029 the basic functionality of \\\\QC.\\x2029\\x2029 You should never create a subclass of this interface. The one and only\\x2029 instance is created by the Core plugin. You can access this instance\\x2029 from your plugin through instance().\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::coreAboutToOpen()\\x2029\\x2029 Indicates that all plugins have been loaded and the main window is about to\\x2029 be shown.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::coreOpened()\\x2029 Indicates that all plugins have been loaded and the main window is shown.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::saveSettingsRequested(Core::ICore::SaveSettingsReason reason)\\x2029 Signals that the user has requested that the global settings\\x2029 should be saved to disk for a \\\\a reason.\\x2029\\x2029 At the moment that happens when the application is closed, and on \\\\uicontrol{Save All}.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::coreAboutToClose()\\x2029 Enables plugins to perform some pre-end-of-life actions.\\x2029\\x2029 The application is guaranteed to shut down after this signal is emitted.\\x2029 It is there as an addition to the usual plugin lifecycle functions, namely\\x2029 \\\\c IPlugin::aboutToShutdown(), just for convenience.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::contextAboutToChange(const QList<Core::IContext *> &context)\\x2029 Indicates that a new \\\\a context will shortly become the current context\\x2029 (meaning that its widget got focus).\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::contextChanged(const Core::Context &context)\\x2029 Indicates that a new \\\\a context just became the current context. This includes the context\\x2029 from the focus object as well as the additional context.\\x2029*/\\x2029\\x2029#include \\\"dialogs/newdialogwidget.h\\\"\\x2029#include \\\"dialogs/newdialog.h\\\"\\x2029#include \\\"iwizardfactory.h\\\"\\x2029#include \\\"documentmanager.h\\\"\\x2029\\x2029#include <utils/hostosinfo.h>\\x2029\\x2029#include <QCoreApplication>\\x2029#include <QDebug>\\x2029#include <QDir>\\x2029#include <QMessageBox>\\x2029#include <QPushButton>\\x2029#include <QStatusBar>\\x2029\\x2029using namespace Core::Internal;\\x2029using namespace ExtensionSystem;\\x2029using namespace Utils;\\x2029\\x2029namespace Core {\\x2029\\x2029\\143onst char settingsGroup[] = \\\"MainWindow\\\";\\x2029\\143onst char colorKey[] = \\\"Color\\\";\\x2029\\143onst char windowGeometryKey[] = \\\"WindowGeometry\\\";\\x2029\\143onst char windowStateKey[] = \\\"WindowState\\\";\\x2029\\143onst char modeSelectorLayoutKey[] = \\\"ModeSelectorLayout\\\";\\x2029\\143onst char menubarVisibleKey[] = \\\"MenubarVisible\\\";\\x2029\\x2029namespace Internal {\\x2029\\x2029\\143lass MainWindow : public AppMainWindow\\x2029{\\x2029public:\\x2029 MainWindow()\\x2029 {\\x2029 setWindowTitle(QGuiApplication::applicationDisplayName());\\x2029 setDockNestingEnabled(true);\\x2029 setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);\\x2029 setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);\\x2029 }\\x2029\\x2029private:\\x2029 void closeEvent(QCloseEvent *event) override;\\x2029 void keyPressEvent(QKeyEvent *event) override;\\x2029 void mousePressEvent(QMouseEvent *event) override;\\x2029};\\x2029\\x2029static QColor s_overrideColor;\\x2029\\x2029// The Core Singleton\\x2029static ICore *m_core = nullptr;\\x2029\\x2029static NewDialog *defaultDialogFactory(QWidget *parent)\\x2029{\\x2029 return new NewDialogWidget(parent);\\x2029}\\x2029\\143lass ICorePrivate : public QObject\\x2029{\\x2029public:\\x2029 ICorePrivate() {}\\x2029\\x2029 ~ICorePrivate();\\x2029\\x2029 void init();\\x2029\\x2029 static void openFile();\\x2029 void aboutToShowRecentFiles();\\x2029\\x2029 static void setFocusToEditor();\\x2029 void aboutQtCreator();\\x2029 void aboutPlugins();\\x2029 void changeLog();\\x2029 void contact();\\x2029 void updateFocusWidget(QWidget *old, QWidget *now);\\x2029 NavigationWidget *navigationWidget(Side side) const;\\x2029 void setSidebarVisible(bool visible, Side side);\\x2029 void destroyVersionDialog();\\x2029 void openDroppedFiles(const QList<Utils::DropSupport::FileSpec> &files);\\x2029 void restoreWindowState();\\x2029\\x2029 void openFileFromDevice();\\x2029\\x2029 void updateContextObject(const QList<IContext *> &context);\\x2029 void updateContext();\\x2029\\x2029 void registerDefaultContainers();\\x2029 void registerDefaultActions();\\x2029 void registerModeSelectorStyleActions();\\x2029\\x2029 void readSettings();\\x2029 void saveWindowSettings();\\x2029\\x2029 void updateModeSelectorStyleMenu();\\x2029\\x2029 MainWindow *m_mainwindow = nullptr;\\x2029 QTimer m_trimTimer;\\x2029 QStringList m_aboutInformation;\\x2029 Context m_highPrioAdditionalContexts;\\x2029 Context m_lowPrioAdditionalContexts{Constants::C_GLOBAL};\\x2029 mutable QPrinter *m_printer = nullptr;\\x2029 WindowSupport *m_windowSupport = nullptr;\\x2029 EditorManager *m_editorManager = nullptr;\\x2029 ExternalToolManager *m_externalToolManager = nullptr;\\x2029 MessageManager *m_messageManager = nullptr;\\x2029 ProgressManagerPrivate *m_progressManager = nullptr;\\x2029 JsExpander *m_jsExpander = nullptr;\\x2029 VcsManager *m_vcsManager = nullptr;\\x2029 ModeManager *m_modeManager = nullptr;\\x2029 FancyTabWidget *m_modeStack = nullptr;\\x2029 NavigationWidget *m_leftNavigationWidget = nullptr;\\x2029 NavigationWidget *m_rightNavigationWidget = nullptr;\\x2029 RightPaneWidget *m_rightPaneWidget = nullptr;\\x2029 VersionDialog *m_versionDialog = nullptr;\\x2029\\x2029 QList<IContext *> m_activeContext;\\x2029\\x2029 std::unordered_map<QWidget *, IContext *> m_contextWidgets;\\x2029\\x2029 ShortcutSettings *m_shortcutSettings = nullptr;\\x2029 ToolSettings *m_toolSettings = nullptr;\\x2029 MimeTypeSettings *m_mimeTypeSettings = nullptr;\\x2029 SystemEditor *m_systemEditor = nullptr;\\x2029\\x2029 // actions\\x2029 QAction *m_focusToEditor = nullptr;\\x2029 QAction *m_newAction = nullptr;\\x2029 QAction *m_openAction = nullptr;\\x2029 QAction *m_openWithAction = nullptr;\\x2029 QAction *m_openFromDeviceAction = nullptr;\\x2029 QAction *m_saveAllAction = nullptr;\\x2029 QAction *m_exitAction = nullptr;\\x2029 QAction *m_optionsAction = nullptr;\\x2029 QAction *m_loggerAction = nullptr;\\x2029 Action m_toggleLeftSideBarAction;\\x2029 Action m_toggleRightSideBarAction;\\x2029 QAction *m_toggleMenubarAction = nullptr;\\x2029 QAction *m_cycleModeSelectorStyleAction = nullptr;\\x2029 QAction *m_setModeSelectorStyleIconsAndTextAction = nullptr;\\x2029 QAction *m_setModeSelectorStyleHiddenAction = nullptr;\\x2029 QAction *m_setModeSelectorStyleIconsOnlyAction = nullptr;\\x2029 QAction *m_themeAction = nullptr;\\x2029\\x2029 QToolButton *m_toggleLeftSideBarButton = nullptr;\\x2029 QToolButton *m_toggleRightSideBarButton = nullptr;\\x2029 QList<std::function<b\"..., size = 60592}, static _empty = 0 u'\\000'}\n" >~" view = {m_size = 92205, m_data = 0x563dda0ac380 u\"\\x2029// Copyright (C) 2016 The Qt Company Ltd.\\n// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0\\n\\n#include \\\"icore.h\\\"\\n\\n#include \\\"actionmanager/actioncontainer.h\\\"\\n#include \\\"actionmanager/actionmanager.h\\\"\\n#include \\\"actionmanager/command.h\\\"\\n#include \\\"coreicons.h\\\"\\n#include \\\"coreplugintr.h\\\"\\n#include \\\"coreplugintr.h\\\"\\n#include \\\"dialogs/externaltoolconfig.h\\\"\\n#include \\\"dialogs/settingsdialog.h\\\"\\n#include \\\"dialogs/shortcutsettings.h\\\"\\n#include \\\"documentmanager.h\\\"\\n#include \\\"editormanager/documentmodel_p.h\\\"\\n#include \\\"editormanager/editormanager.h\\\"\\n#include \\\"editormanager/editormanager_p.h\\\"\\n#include \\\"editormanager/ieditor.h\\\"\\n#include \\\"editormanager/ieditorfactory.h\\\"\\n#include \\\"editormanager/systemeditor.h\\\"\\n#include \\\"externaltoolmanager.h\\\"\\n#include \\\"fancytabwidget.h\\\"\\n#include \\\"fileutils.h\\\"\\n#include \\\"find/basetextfind.h\\\"\\n#include \\\"findplaceholder.h\\\"\\n#include \\\"helpmanager.h\\\"\\n#include \\\"icore.h\\\"\\n#include \\\"idocumentfactory.h\\\"\\n#include \\\"inavigationwidgetfactory.h\\\"\\n#include \\\"iwizardfactory.h\\\"\\n#include \\\"jsexpander.h\\\"\\n#include \\\"loggingviewer.h\\\"\\n#include \\\"manhattanstyle.h\\\"\\n#include \\\"messagemanager.h\\\"\\n#include \\\"mimetypesettings.h\\\"\\n#include \\\"modemanager.h\\\"\\n#include \\\"navigationwidget.h\\\"\\n#include \\\"outputpanemanager.h\\\"\\n#include \\\"plugindialog.h\\\"\\n#include \\\"progressmanager/progressmanager_p.h\\\"\\n#include \\\"progressmanager/progressview.h\\\"\\n#include \\\"rightpane.h\\\"\\n#include \\\"statusbarmanager.h\\\"\\n#include \\\"systemsettings.h\\\"\\n#include \\\"vcsmanager.h\\\"\\n#include \\\"versiondialog.h\\\"\\n#include \\\"windowsupport.h\\\"\\n\\n#include <extensionsystem/pluginmanager.h>\\n\\n#include <utils/algorithm.h>\\n#include <utils/appinfo.h>\\n#include <utils/checkablemessagebox.h>\\n#include <utils/environment.h>\\n#include <utils/fileutils.h>\\n#include <utils/fsengine/fileiconprovider.h>\\n#include <utils/fsengine/fsengine.h>\\n#include <utils/historycompleter.h>\\n#include <utils/hostosinfo.h>\\n#include <utils/mimeutils.h>\\n#include <utils/proxyaction.h>\\n#include <utils/qtcassert.h>\\n#include <utils/stringutils.h>\\n#include <utils/stylehelper.h>\\n#include <utils/terminalcommand.h>\\n#include <utils/theme/theme.h>\\n#include <utils/touchbar/touchbar.h>\\n#include <utils/utilsicons.h>\\n\\n#include <nanotrace/nanotrace.h>\\n\\n#include <QActionGroup>\\n#include <QApplication>\\n#include <QCloseEvent>\\n#include <QColorDialog>\\n#include <QComboBox>\\n#include <QDebug>\\n#include <QDialogButtonBox>\\n#include <QLibraryInfo>\\n#include <QMenu>\\n#include <QMenuBar>\\n#include <QMessageBox>\\n#include <QPrinter>\\n#include <QStandardPaths>\\n#include <QStatusBar>\\n#include <QStyleFactory>\\n#include <QSysInfo>\\n#include <QTextBrowser>\\n#include <QTimer>\\n#include <QToolButton>\\n#include <QVersionNumber>\\n\\n#ifdef Q_OS_LINUX\\n#include <malloc.h>\\n#endif\\n\\n/*!\\n \\\\namespace Core\\n \\\\inmodule QtCreator\\n \\\\brief The Core namespace contains all classes that make up the Core plugin\\n which constitute the basic functionality of \\\\QC.\\n*/\\n\\n/*!\\n \\\\enum Utils::FindFlag\\n This enum holds the find flags.\\n\\n \\\\value FindBackward\\n\", ' ' <repeats 11 times>, \"Searches backwards.\\n \\\\value FindCaseSensitively\\n\", ' ' <repeats 11 times>, \"Considers case when searching.\\n \\\\value FindWholeWords\\n\", ' ' <repeats 11 times>, \"Finds only whole words.\\n \\\\value FindRegularExpression\\n\", ' ' <repeats 11 times>, \"Uses a regular epression as a search term.\\n \\\\value FindPreserveCase\\n\", ' ' <repeats 11 times>, \"Preserves the case when replacing search terms.\\n*/\\n\\n/*!\\n \\\\enum Core::ICore::ContextPriority\\n\\n This enum defines the priority of additional contexts.\\n\\n \\\\value High\\n\", ' ' <repeats 11 times>, \"Additional contexts that have higher priority than contexts from\\n\", ' ' <repeats 11 times>, \"Core::IContext instances.\\n \\\\value Low\\n\", ' ' <repeats 11 times>, \"Additional contexts that have lower priority than contexts from\\n\", ' ' <repeats 11 times>, \"Core::IContext instances.\\n\\n \\\\sa Core::ICore::updateAdditionalContexts()\\n*/\\n\\n/*!\\n \\\\enum Core::SaveSettingsReason\\n \\\\internal\\n*/\\n\\n/*!\\n \\\\namespace Core::Internal\\n \\\\internal\\n*/\\n\\n/*!\\n \\\\class Core::ICore\\n \\\\inheaderfile coreplugin/icore.h\\n \\\\inmodule QtCreator\\n \\\\ingroup mainclasses\\n\\n \\\\brief The ICore class allows access to the different parts that make up\\n the basic functionality of \\\\QC.\\n\\n You should never create a subclass of this interface. The one and only\\n instance is created by the Core plugin. You can access this instance\\n from your plugin through instance().\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::coreAboutToOpen()\\n\\n Indicates that all plugins have been loaded and the main window is about to\\n be shown.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::coreOpened()\\n Indicates that all plugins have been loaded and the main window is shown.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::saveSettingsRequested(Core::ICore::SaveSettingsReason reason)\\n Signals that the user has requested that the global settings\\n should be saved to disk for a \\\\a reason.\\n\\n At the moment that happens when the application is closed, and on \\\\uicontrol{Save All}.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::coreAboutToClose()\\n Enables plugins to perform some pre-end-of-life actions.\\n\\n The application is guaranteed to shut down after this signal is emitted.\\n It is there as an addition to the usual plugin lifecycle functions, namely\\n \\\\c IPlugin::aboutToShutdown(), just for convenience.\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::contextAboutToChange(const QList<Core::IContext *> &context)\\n Indicates that a new \\\\a context will shortly become the current context\\n (meaning that its widget got focus).\\n*/\\n\\n/*!\\n \\\\fn void Core::ICore::contextChanged(const Core::Context &context)\\n Indicates that a new \\\\a context just became the current context. This includes the context\\n from the focus object as well as the additional context.\\n*/\\n\\n#include \\\"dialogs/newdialogwidget.h\\\"\\n#include \\\"dialogs/newdialog.h\\\"\\n#include \\\"iwizardfactory.h\\\"\\n#include \\\"documentmanager.h\\\"\\n\\n#include <utils/hostosinfo.h>\\n\\n#include <QCoreApplication>\\n#include <QDebug>\\n#include <QDir>\\n#include <QMessageBox>\\n#include <QPushButton>\\n#include <QStatusBar>\\n\\nusing namespace Core::Internal;\\nusing namespace ExtensionSystem;\\nusing namespace Utils;\\n\\nnamespace Core {\\n\\nconst char settingsGroup[] = \\\"MainWindow\\\";\\nconst char colorKey[] = \\\"Color\\\";\\nconst char windowGeometryKey[] = \\\"WindowGeometry\\\";\\nconst char windowStateKey[] = \\\"WindowState\\\";\\nconst char modeSelectorLayoutKey[] = \\\"ModeSelectorLayout\\\";\\nconst char menubarVisibleKey[] = \\\"MenubarVisible\\\";\\n\\nnamespace Internal {\\n\\nclass MainWindow : public AppMainWindow\\n{\\npublic:\\n MainWindow()\\n {\\n setWindowTitle(QGuiApplication::applicationDisplayName());\\n setDockNestingEnabled(true);\\n setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);\\n setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);\\n }\\n\\nprivate:\\n void closeEvent(QCloseEvent *event) override;\\n void keyPressEvent(QKeyEvent *event) override;\\n void mousePressEvent(QMouseEvent *event) override;\\n};\\n\\nstatic QColor s_overrideColor;\\n\\n// The Core Singleton\\nstatic ICore *m_core = nullptr;\\n\\nstatic NewDialog *defaultDialogFactory(QWidget *parent)\\n{\\n return new NewDialogWidget(parent);\\n}\\nclass ICorePrivate : public QObject\\n{\\npublic:\\n ICorePrivate() {}\\n\\n ~ICorePrivate();\\n\\n void init();\\n\\n static void openFile();\\n void aboutToShowRecentFiles();\\n\\n static void setFocusToEditor();\\n void aboutQtCreator();\\n void aboutPlugins();\\n void changeLog();\\n void contact();\\n void updateFocusWidget(QWidget *old, QWidget *now);\\n NavigationWidget *navigationWidget(Side side) const;\\n void setSidebarVisible(bool visible, Side side);\\n void destroyVersionDialog();\\n void openDroppedFiles(const QList<Utils::DropSupport::FileSpec> &files);\\n void restoreWindowState();\\n\\n void openFileFromDevice();\\n\\n void updateContextObject(const QList<IContext *> &context);\\n void updateContext();\\n\\n void registerDefaultContainers();\\n void registerDefaultActions();\\n void registerModeSelectorStyleActions();\\n\\n void readSettings();\\n void saveWindowSettings();\\n\\n void updateModeSelectorStyleMenu();\\n\\n MainWindow *m_mainwindow = nullptr;\\n QTimer m_trimTimer;\\n QStringList m_aboutInformation;\\n Context m_highPrioAdditionalContexts;\\n Context m_lowPrioAdditionalContexts{Constants::C_GLOBAL};\\n mutable QPrinter *m_printer = nullptr;\\n WindowSupport *m_windowSupport = nullptr;\\n EditorManager *m_editorManager = nullptr;\\n ExternalToolManager *m_externalToolManager = nullptr;\\n MessageManager *m_messageManager = nullptr;\\n ProgressManagerPrivate *m_progressManager = nullptr;\\n JsExpander *m_jsExpander = nullptr;\\n VcsManager *m_vcsManager = nullptr;\\n ModeManager *m_modeManager = nullptr;\\n FancyTabWidget *m_modeStack = nullptr;\\n NavigationWidget *m_leftNavigationWidget = nullptr;\\n NavigationWidget *m_rightNavigationWidget = nullptr;\\n RightPaneWidget *m_rightPaneWidget = nullptr;\\n VersionDialog *m_versionDialog = nullptr;\\n\\n QList<IContext *> m_activeContext;\\n\\n std::unordered_map<QWidget *, IContext *> m_contextWidgets;\\n\\n ShortcutSettings *m_shortcutSettings = nullptr;\\n ToolSettings *m_toolSettings = nullptr;\\n MimeTypeSettings *m_mimeTypeSettings = nullptr;\\n SystemEditor *m_systemEditor = nullptr;\\n\\n // actions\\n QAction *m_focusToEditor = nullptr;\\n QAction *m_newAction = nullptr;\\n QAction *m_openAction = nullptr;\\n QAction *m_openWithAction = nullptr;\\n QAction *m_openFromDeviceAction = nullptr;\\n QAction *m_saveAllAction = nullptr;\\n QAction *m_exitAction = nullptr;\\n QAction *m_optionsAction = nullptr;\\n QAction *m_loggerAction = nullptr;\\n QAction *m_toggleLeftSideBarAction = nullptr;\\n QAction *m_toggleRightSideBarAction = nullptr;\\n QAction *m_toggleMenubarAction = nullptr;\\n QAction *m_cycleModeSelectorStyleAction = nullptr;\\n QAction *m_setModeSelectorStyleIconsAndTextAction = nullptr;\\n QAction *m_setModeSelectorStyleHiddenAction = nullptr;\\n QAction *m_setModeSelectorStyleIconsOnlyAction = nullptr;\\n QAction *m_themeAction = nullptr;\\n\\n QToolButton *m_toggleLeftSideBarButton = nullptr;\\n QToolButton *m_toggleRightSideBarButton = nullptr;\\n\"...}\n" >~"#13 0x00007f2b9bbb0006 in QTextDocument::toPlainText (this=0x563dd7519158) at /data/dev/qt-6/qtbase/src/gui/text/qtextdocument.cpp:1217\n" >~" d = 0x7f2a141ad900\n" >~" txt = {d = {d = 0x7f2a661e0f20, ptr = 0x7f2a661e0f30 u\"// Copyright (C) 2016 The Qt Company Ltd.\\x2029// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0\\x2029\\x2029#include \\\"icore.h\\\"\\x2029\\x2029#include \\\"actionmanager/actioncontainer.h\\\"\\x2029#include \\\"actionmanager/actionmanager.h\\\"\\x2029#include \\\"actionmanager/command.h\\\"\\x2029#include \\\"coreicons.h\\\"\\x2029#include \\\"coreplugintr.h\\\"\\x2029#include \\\"coreplugintr.h\\\"\\x2029#include \\\"dialogs/externaltoolconfig.h\\\"\\x2029#include \\\"dialogs/settingsdialog.h\\\"\\x2029#include \\\"dialogs/shortcutsettings.h\\\"\\x2029#include \\\"documentmanager.h\\\"\\x2029#include \\\"editormanager/documentmodel_p.h\\\"\\x2029#include \\\"editormanager/editormanager.h\\\"\\x2029#include \\\"editormanager/editormanager_p.h\\\"\\x2029#include \\\"editormanager/ieditor.h\\\"\\x2029#include \\\"editormanager/ieditorfactory.h\\\"\\x2029#include \\\"editormanager/systemeditor.h\\\"\\x2029#include \\\"externaltoolmanager.h\\\"\\x2029#include \\\"fancytabwidget.h\\\"\\x2029#include \\\"fileutils.h\\\"\\x2029#include \\\"find/basetextfind.h\\\"\\x2029#include \\\"findplaceholder.h\\\"\\x2029#include \\\"helpmanager.h\\\"\\x2029#include \\\"icore.h\\\"\\x2029#include \\\"idocumentfactory.h\\\"\\x2029#include \\\"inavigationwidgetfactory.h\\\"\\x2029#include \\\"iwizardfactory.h\\\"\\x2029#include \\\"jsexpander.h\\\"\\x2029#include \\\"loggingviewer.h\\\"\\x2029#include \\\"manhattanstyle.h\\\"\\x2029#include \\\"messagemanager.h\\\"\\x2029#include \\\"mimetypesettings.h\\\"\\x2029#include \\\"modemanager.h\\\"\\x2029#include \\\"navigationwidget.h\\\"\\x2029#include \\\"outputpanemanager.h\\\"\\x2029#include \\\"plugindialog.h\\\"\\x2029#include \\\"progressmanager/progressmanager_p.h\\\"\\x2029#include \\\"progressmanager/progressview.h\\\"\\x2029#include \\\"rightpane.h\\\"\\x2029#include \\\"statusbarmanager.h\\\"\\x2029#include \\\"systemsettings.h\\\"\\x2029#include \\\"vcsmanager.h\\\"\\x2029#include \\\"versiondialog.h\\\"\\x2029#include \\\"windowsupport.h\\\"\\x2029\\x2029#include <extensionsystem/pluginmanager.h>\\x2029\\x2029#include <utils/algorithm.h>\\x2029#include <utils/appinfo.h>\\x2029#include <utils/checkablemessagebox.h>\\x2029#include <utils/environment.h>\\x2029#include <utils/fileutils.h>\\x2029#include <utils/fsengine/fileiconprovider.h>\\x2029#include <utils/fsengine/fsengine.h>\\x2029#include <utils/historycompleter.h>\\x2029#include <utils/hostosinfo.h>\\x2029#include <utils/mimeutils.h>\\x2029#include <utils/proxyaction.h>\\x2029#include <utils/qtcassert.h>\\x2029#include <utils/stringutils.h>\\x2029#include <utils/stylehelper.h>\\x2029#include <utils/terminalcommand.h>\\x2029#include <utils/theme/theme.h>\\x2029#include <utils/touchbar/touchbar.h>\\x2029#include <utils/utilsicons.h>\\x2029\\x2029#include <nanotrace/nanotrace.h>\\x2029\\x2029#include <QActionGroup>\\x2029#include <QApplication>\\x2029#include <QCloseEvent>\\x2029#include <QColorDialog>\\x2029#include <QComboBox>\\x2029#include <QDebug>\\x2029#include <QDialogButtonBox>\\x2029#include <QLibraryInfo>\\x2029#include <QMenu>\\x2029#include <QMenuBar>\\x2029#include <QMessageBox>\\x2029#include <QPrinter>\\x2029#include <QStandardPaths>\\x2029#include <QStatusBar>\\x2029#include <QStyleFactory>\\x2029#include <QSysInfo>\\x2029#include <QTextBrowser>\\x2029#include <QTimer>\\x2029#include <QToolButton>\\x2029#include <QVersionNumber>\\x2029\\x2029#ifdef Q_OS_LINUX\\x2029#include <malloc.h>\\x2029#endif\\x2029\\x2029/*!\\x2029 \\\\namespace Core\\x2029 \\\\inmodule QtCreator\\x2029 \\\\brief The Core namespace contains all classes that make up the Core plugin\\x2029 which constitute the basic functionality of \\\\QC.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\enum Utils::FindFlag\\x2029 This enum holds the find flags.\\x2029\\x2029 \\\\value FindBackward\\x2029\", ' ' <repeats 11 times>, \"Searches backwards.\\x2029 \\\\value FindCaseSensitively\\x2029\", ' ' <repeats 11 times>, \"Considers case when searching.\\x2029 \\\\value FindWholeWords\\x2029\", ' ' <repeats 11 times>, \"Finds only whole words.\\x2029 \\\\value FindRegularExpression\\x2029\", ' ' <repeats 11 times>, \"Uses a regular epression as a search term.\\x2029 \\\\value FindPreserveCase\\x2029\", ' ' <repeats 11 times>, \"Preserves the case when replacing search terms.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\enum Core::ICore::ContextPriority\\x2029\\x2029 This enum defines the priority of additional contexts.\\x2029\\x2029 \\\\value High\\x2029\", ' ' <repeats 11 times>, \"Additional contexts that have higher priority than contexts from\\x2029\", ' ' <repeats 11 times>, \"Core::IContext instances.\\x2029 \\\\value Low\\x2029\", ' ' <repeats 11 times>, \"Additional contexts that have lower priority than contexts from\\x2029\", ' ' <repeats 11 times>, \"Core::IContext instances.\\x2029\\x2029 \\\\sa Core::ICore::updateAdditionalContexts()\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\enum Core::SaveSettingsReason\\x2029 \\\\internal\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\namespace Core::Internal\\x2029 \\\\internal\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\class Core::ICore\\x2029 \\\\inheaderfile coreplugin/icore.h\\x2029 \\\\inmodule QtCreator\\x2029 \\\\ingroup mainclasses\\x2029\\x2029 \\\\brief The ICore class allows access to the different parts that make up\\x2029 the basic functionality of \\\\QC.\\x2029\\x2029 You should never create a subclass of this interface. The one and only\\x2029 instance is created by the Core plugin. You can access this instance\\x2029 from your plugin through instance().\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::coreAboutToOpen()\\x2029\\x2029 Indicates that all plugins have been loaded and the main window is about to\\x2029 be shown.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::coreOpened()\\x2029 Indicates that all plugins have been loaded and the main window is shown.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::saveSettingsRequested(Core::ICore::SaveSettingsReason reason)\\x2029 Signals that the user has requested that the global settings\\x2029 should be saved to disk for a \\\\a reason.\\x2029\\x2029 At the moment that happens when the application is closed, and on \\\\uicontrol{Save All}.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::coreAboutToClose()\\x2029 Enables plugins to perform some pre-end-of-life actions.\\x2029\\x2029 The application is guaranteed to shut down after this signal is emitted.\\x2029 It is there as an addition to the usual plugin lifecycle functions, namely\\x2029 \\\\c IPlugin::aboutToShutdown(), just for convenience.\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::contextAboutToChange(const QList<Core::IContext *> &context)\\x2029 Indicates that a new \\\\a context will shortly become the current context\\x2029 (meaning that its widget got focus).\\x2029*/\\x2029\\x2029/*!\\x2029 \\\\fn void Core::ICore::contextChanged(const Core::Context &context)\\x2029 Indicates that a new \\\\a context just became the current context. This includes the context\\x2029 from the focus object as well as the additional context.\\x2029*/\\x2029\\x2029#include \\\"dialogs/newdialogwidget.h\\\"\\x2029#include \\\"dialogs/newdialog.h\\\"\\x2029#include \\\"iwizardfactory.h\\\"\\x2029#include \\\"documentmanager.h\\\"\\x2029\\x2029#include <utils/hostosinfo.h>\\x2029\\x2029#include <QCoreApplication>\\x2029#include <QDebug>\\x2029#include <QDir>\\x2029#include <QMessageBox>\\x2029#include <QPushButton>\\x2029#include <QStatusBar>\\x2029\\x2029using namespace Core::Internal;\\x2029using namespace ExtensionSystem;\\x2029using namespace Utils;\\x2029\\x2029namespace Core {\\x2029\\x2029\\143onst char settingsGroup[] = \\\"MainWindow\\\";\\x2029\\143onst char colorKey[] = \\\"Color\\\";\\x2029\\143onst char windowGeometryKey[] = \\\"WindowGeometry\\\";\\x2029\\143onst char windowStateKey[] = \\\"WindowState\\\";\\x2029\\143onst char modeSelectorLayoutKey[] = \\\"ModeSelectorLayout\\\";\\x2029\\143onst char menubarVisibleKey[] = \\\"MenubarVisible\\\";\\x2029\\x2029namespace Internal {\\x2029\\x2029\\143lass MainWindow : public AppMainWindow\\x2029{\\x2029public:\\x2029 MainWindow()\\x2029 {\\x2029 setWindowTitle(QGuiApplication::applicationDisplayName());\\x2029 setDockNestingEnabled(true);\\x2029 setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);\\x2029 setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);\\x2029 }\\x2029\\x2029private:\\x2029 void closeEvent(QCloseEvent *event) override;\\x2029 void keyPressEvent(QKeyEvent *event) override;\\x2029 void mousePressEvent(QMouseEvent *event) override;\\x2029};\\x2029\\x2029static QColor s_overrideColor;\\x2029\\x2029// The Core Singleton\\x2029static ICore *m_core = nullptr;\\x2029\\x2029static NewDialog *defaultDialogFactory(QWidget *parent)\\x2029{\\x2029 return new NewDialogWidget(parent);\\x2029}\\x2029\\143lass ICorePrivate : public QObject\\x2029{\\x2029public:\\x2029 ICorePrivate() {}\\x2029\\x2029 ~ICorePrivate();\\x2029\\x2029 void init();\\x2029\\x2029 static void openFile();\\x2029 void aboutToShowRecentFiles();\\x2029\\x2029 static void setFocusToEditor();\\x2029 void aboutQtCreator();\\x2029 void aboutPlugins();\\x2029 void changeLog();\\x2029 void contact();\\x2029 void updateFocusWidget(QWidget *old, QWidget *now);\\x2029 NavigationWidget *navigationWidget(Side side) const;\\x2029 void setSidebarVisible(bool visible, Side side);\\x2029 void destroyVersionDialog();\\x2029 void openDroppedFiles(const QList<Utils::DropSupport::FileSpec> &files);\\x2029 void restoreWindowState();\\x2029\\x2029 void openFileFromDevice();\\x2029\\x2029 void updateContextObject(const QList<IContext *> &context);\\x2029 void updateContext();\\x2029\\x2029 void registerDefaultContainers();\\x2029 void registerDefaultActions();\\x2029 void registerModeSelectorStyleActions();\\x2029\\x2029 void readSettings();\\x2029 void saveWindowSettings();\\x2029\\x2029 void updateModeSelectorStyleMenu();\\x2029\\x2029 MainWindow *m_mainwindow = nullptr;\\x2029 QTimer m_trimTimer;\\x2029 QStringList m_aboutInformation;\\x2029 Context m_highPrioAdditionalContexts;\\x2029 Context m_lowPrioAdditionalContexts{Constants::C_GLOBAL};\\x2029 mutable QPrinter *m_printer = nullptr;\\x2029 WindowSupport *m_windowSupport = nullptr;\\x2029 EditorManager *m_editorManager = nullptr;\\x2029 ExternalToolManager *m_externalToolManager = nullptr;\\x2029 MessageManager *m_messageManager = nullptr;\\x2029 ProgressManagerPrivate *m_progressManager = nullptr;\\x2029 JsExpander *m_jsExpander = nullptr;\\x2029 VcsManager *m_vcsManager = nullptr;\\x2029 ModeManager *m_modeManager = nullptr;\\x2029 FancyTabWidget *m_modeStack = nullptr;\\x2029 NavigationWidget *m_leftNavigationWidget = nullptr;\\x2029 NavigationWidget *m_rightNavigationWidget = nullptr;\\x2029 RightPaneWidget *m_rightPaneWidget = nullptr;\\x2029 VersionDialog *m_versionDialog = nullptr;\\x2029\\x2029 QList<IContext *> m_activeContext;\\x2029\\x2029 std::unordered_map<QWidget *, IContext *> m_contextWidgets;\\x2029\\x2029 ShortcutSettings *m_shortcutSettings = nullptr;\\x2029 ToolSettings *m_toolSettings = nullptr;\\x2029 MimeTypeSettings *m_mimeTypeSettings = nullptr;\\x2029 SystemEditor *m_systemEditor = nullptr;\\x2029\\x2029 // actions\\x2029 QAction *m_focusToEditor = nullptr;\\x2029 QAction *m_newAction = nullptr;\\x2029 QAction *m_openAction = nullptr;\\x2029 QAction *m_openWithAction = nullptr;\\x2029 QAction *m_openFromDeviceAction = nullptr;\\x2029 QAction *m_saveAllAction = nullptr;\\x2029 QAction *m_exitAction = nullptr;\\x2029 QAction *m_optionsAction = nullptr;\\x2029 QAction *m_loggerAction = nullptr;\\x2029 Action m_toggleLeftSideBarAction;\\x2029 Action m_toggleRightSideBarAction;\\x2029 QAction *m_toggleMenubarAction = nullptr;\\x2029 QAction *m_cycleModeSelectorStyleAction = nullptr;\\x2029 QAction *m_setModeSelectorStyleIconsAndTextAction = nullptr;\\x2029 QAction *m_setModeSelectorStyleHiddenAction = nullptr;\\x2029 QAction *m_setModeSelectorStyleIconsOnlyAction = nullptr;\\x2029 QAction *m_themeAction = nullptr;\\x2029\\x2029 QToolButton *m_toggleLeftSideBarButton = nullptr;\\x2029 QToolButton *m_toggleRightSideBarButton = nullptr;\\x2029 QList<std::function<b\"..., size = 60592}, static _empty = 0 u'\\000'}\n" >~" delims = u\"\\000\346\211\220\357\220\254\347\274\252\"\n" >~" pos = 94823353956928\n" >~" uc = 0x7f2a3fffe6e0\n" >~" e = 0x7f2b8c70e500 <TextEditor::TextDocumentLayout::staticMetaObject+32>\n" >~"#14 0x00007f2b69348c7b in CppEditor::Internal::(anonymous namespace)::FindLocalSymbols::operator() (this=0x7f2a3fffe8f0, ast=0x7f2af42c6250) at /data/dev/creator/src/plugins/cppeditor/cpplocalsymbols.cpp:61\n" >~" editorDoc = 0x563dc8543a40\n" >~" textDoc = 0x563dd7519158\n" >~" content = @0x7f2a3fffe7b0: {d = {d = 0x7f2a3fffe7d0, ptr = 0xffff <error: Cannot access memory at address 0xffff>, size = 139819439089648}, static _empty = 0 u'\\000'}\n" >~" docView = {m_size = 139819439089648, m_data = 0x7f2b69116880 <QAtomicOps<int>::loadRelaxed<int>(std::atomic<int> const&)+83> u\"\354\202\204\340\265\264\347\266\203\323\264\335\265\306\270\"}\n" >~"#15 0x00007f2b69349e0c in CppEditor::Internal::LocalSymbols::LocalSymbols (this=0x7f2a3fffe978, doc=..., ast=0x7f2af42c6250) at /data/dev/creator/src/plugins/cppeditor/cpplocalsymbols.cpp:333\n" >~" findLocalSymbols = {<CPlusPlus::ASTVisitor> = {_vptr.ASTVisitor = 0x7f2b69973458 <vtable for CppEditor::Internal::(anonymous namespace)::FindLocalSymbols+16>, _translationUnit = 0x7f2af487cd40}, localUses = {d = 0x7f2a654c53e0}, _scopeStack = {<QListSpecialMethods<CPlusPlus::Scope*>> = {<QListSpecialMethodsBase<CPlusPlus::Scope*>> = {<No data fields>}, <No data fields>}, d = {d = 0x7f2a655afad0, ptr = 0x7f2a655afae0, size = 0}}, _doc = {value = 0x7f2af4292040, d = 0x7f2af47ba530}}\n" >~" findLocalSymbols = <optimized out>\n" >~"#16 0x00007f2b691993b8 in CppEditor::CheckSymbols::visit (this=0x563dd88f8c00, ast=0x7f2af42c6250) at /data/dev/creator/src/plugins/cppeditor/cppchecksymbols.cpp:1117\n" >~" thisFunction = 0x7f2af42c6250\n" >~" processEntireDeclr = false\n" >~" locals = {uses = {d = 0x0}}\n" >~"#17 0x00007f2b8036c8e8 in CPlusPlus::FunctionDefinitionAST::accept0 (this=0x7f2af42c6250, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/ASTVisit.cpp:520\n" >~"No locals.\n" >~"#18 0x00007f2b80354343 in CPlusPlus::AST::accept (this=0x7f2af42c6250, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.cpp:51\n" >~"No locals.\n" >~"#19 0x00007f2b8036cd6f in CPlusPlus::AST::accept (visitor=0x563dd88f8c10, ast=<optimized out>) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.h:143\n" >~"No locals.\n" >~"#20 CPlusPlus::AST::accept<CPlusPlus::DeclarationAST*> (visitor=0x563dd88f8c10, it=0x7f2af42c6a68) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.h:149\n" >~"No locals.\n" >~"#21 CPlusPlus::LinkageBodyAST::accept0 (this=0x7f2af40934a8, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/ASTVisit.cpp:593\n" >~"No locals.\n" >~"#22 0x00007f2b80354343 in CPlusPlus::AST::accept (this=0x7f2af40934a8, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.cpp:51\n" >~"No locals.\n" >~"#23 0x00007f2b8036d34a in CPlusPlus::AST::accept (visitor=0x563dd88f8c10, ast=<optimized out>) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.h:143\n" >~"No locals.\n" >~"#24 CPlusPlus::NamespaceAST::accept0 (this=0x7f2af4093478, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/ASTVisit.cpp:683\n" >~"No locals.\n" >~"#25 0x00007f2b80354343 in CPlusPlus::AST::accept (this=0x7f2af4093478, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.cpp:51\n" >~"No locals.\n" >~"#26 0x00007f2b8036e93f in CPlusPlus::AST::accept (visitor=0x563dd88f8c10, ast=<optimized out>) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.h:143\n" >~"No locals.\n" >~"#27 CPlusPlus::AST::accept<CPlusPlus::DeclarationAST*> (visitor=0x563dd88f8c10, it=0x7f2af43f42e0) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.h:149\n" >~"No locals.\n" >~"#28 CPlusPlus::TranslationUnitAST::accept0 (this=0x7f2af40932f0, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/ASTVisit.cpp:1025\n" >~"No locals.\n" >~"#29 0x00007f2b80354343 in CPlusPlus::AST::accept (this=0x7f2af40932f0, visitor=0x563dd88f8c10) at /data/dev/creator/src/libs/3rdparty/cplusplus/AST.cpp:51\n" >~"No locals.\n" >~"#30 0x00007f2b691958a3 in CppEditor::CheckSymbols::run (this=0x563dd88f8c00) at /data/dev/creator/src/plugins/cppeditor/cppchecksymbols.cpp:323\n" >~" collectTypes = {<CPlusPlus::SymbolVisitor> = {_vptr.SymbolVisitor = 0x7f2b699729e8 <vtable for CppEditor::(anonymous namespace)::CollectSymbols+16>}, _doc = {value = 0x7f2af4292040, d = 0x7f2af47ba530}, _snapshot = {m_deps = {files = {<QListSpecialMethods<Utils::FilePath>> = {<QListSpecialMethodsBase<Utils::FilePath>> = {<No data fields>}, <No data fields>}, d = {d = 0x7f2af4dbb8e0, ptr = 0x7f2af4dbb8f0, size = 1044}}, fileIndex = {d = 0x7f2af4166430}, includes = {d = 0x7f2af46c2e20}, includeMap = {<QListSpecialMethods<QBitArray>> = {<QListSpecialMethodsBase<QBitArray>> = {<No data fields>}, <No data fields>}, d = {d = 0x7f2af44addf0, ptr = 0x7f2af44ade00, size = 1044}}}, _documents = {d = 0x7f2af4276420}}, _types = {q_hash = {d = 0x7f2a64be2ac0}}, _fields = {q_hash = {d = 0x7f2a65f741d0}}, _functions = {q_hash = {d = 0x7f2a665c1500}}, _statics = {q_hash = {d = 0x7f2a65ad80a0}}, _mainDocument = true}\n" >~"#31 0x00007f2b9aa94d10 in QThreadPoolThread::run (this=0x7f2ad001ddd0) at /data/dev/qt-6/qtbase/src/corelib/thread/qthreadpool.cpp:68\n" >~" del = true\n" >~" page = 0x563dd8915810\n" >~" r = 0x563dd88f8c20\n" >~" locker = {m_mutex = 0x563dc621eeb8, m_isLocked = false}\n" >~" __PRETTY_FUNCTION__ = \"virtual void QThreadPoolThread::run()\"\n" >~"#32 0x00007f2b9aa83da3 in operator() (__closure=0x7f2a3fffedd8) at /data/dev/qt-6/qtbase/src/corelib/thread/qthread_unix.cpp:326\n" >~" thr = 0x7f2ad001ddd0\n" >~" data = 0x7f2ad0001680\n" >~" arg = @0x7f2a3fffedc8: 0x7f2ad001ddd0\n" >~"#33 0x00007f2b9aa84fff in (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >(struct {...} &&) (t=...) at /data/dev/qt-6/qtbase/src/corelib/thread/qthread_unix.cpp:262\n" >~"No locals.\n" >~"#34 0x00007f2b9aa83e65 in QThreadPrivate::start (arg=0x7f2ad001ddd0) at /data/dev/qt-6/qtbase/src/corelib/thread/qthread_unix.cpp:285\n" >~" __clframe = {__cancel_routine = 0x7f2b9aa840c6 <QThreadPrivate::finish(void*)>, __cancel_arg = 0x7f2ad001ddd0, __do_it = 1, __cancel_type = 0}\n" >~"#35 0x00007f2b99e8f18a in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:444\n" >~" ret = <optimized out>\n" >~" pd = <optimized out>\n" >~" out = <optimized out>\n" >~" unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139825242500768, -9063967553509047735, -320, 22, 139820605085776, 139819430703104, 8962777299895009865, 8962552870715867721}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}\n" >~" not_first_call = <optimized out>\n" >~"#36 0x00007f2b99f1dbd0 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81\n"
So far I could not reproduce this with a freshly created QTextDocument even with the same contents, but it happens regularly for me while editing. My best guess is that there is some inner/cached state of the QTextDocument involved.
At the time of the assert here n = 4, pos = 92202, size = 92205; the general pattern seen in other cases is n + pos == size + 1.