Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Marco Bubke
flatpak-qt-creator
Commits
bf077800
Commit
bf077800
authored
Dec 09, 2009
by
hjk
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
debugger: make watchdog timeout configurable
parent
4db1b371
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
62 additions
and
7 deletions
+62
-7
src/plugins/debugger/debuggeractions.cpp
src/plugins/debugger/debuggeractions.cpp
+6
-0
src/plugins/debugger/debuggeractions.h
src/plugins/debugger/debuggeractions.h
+1
-0
src/plugins/debugger/debuggerplugin.cpp
src/plugins/debugger/debuggerplugin.cpp
+1
-0
src/plugins/debugger/gdb/gdbengine.cpp
src/plugins/debugger/gdb/gdbengine.cpp
+2
-1
src/plugins/debugger/gdb/gdbengine.h
src/plugins/debugger/gdb/gdbengine.h
+0
-1
src/plugins/debugger/gdb/gdboptionspage.cpp
src/plugins/debugger/gdb/gdboptionspage.cpp
+3
-0
src/plugins/debugger/gdb/gdboptionspage.ui
src/plugins/debugger/gdb/gdboptionspage.ui
+49
-5
No files found.
src/plugins/debugger/debuggeractions.cpp
View file @
bf077800
...
...
@@ -399,6 +399,12 @@ DebuggerSettings *DebuggerSettings::instance()
item
->
setText
(
tr
(
"Execute line"
));
instance
->
insertItem
(
ExecuteCommand
,
item
);
item
=
new
SavedAction
(
instance
);
item
->
setSettingsKey
(
debugModeGroup
,
QLatin1String
(
"WatchdogTimeout"
));
item
->
setDefaultValue
(
20
);
instance
->
insertItem
(
GdbWatchdogTimeout
,
item
);
return
instance
;
}
...
...
src/plugins/debugger/debuggeractions.h
View file @
bf077800
...
...
@@ -100,6 +100,7 @@ enum DebuggerActionCode
GdbEnvironment
,
GdbScriptFile
,
ExecuteCommand
,
GdbWatchdogTimeout
,
// Stack
MaximalStackDepth
,
...
...
src/plugins/debugger/debuggerplugin.cpp
View file @
bf077800
...
...
@@ -362,6 +362,7 @@ QWidget *CommonOptionsPage::createPage(QWidget *parent)
m_ui
.
checkBoxEnableReverseDebugging
);
m_group
.
insert
(
theDebuggerAction
(
MaximalStackDepth
),
m_ui
.
spinBoxMaximalStackDepth
);
m_group
.
insert
(
theDebuggerAction
(
GdbWatchdogTimeout
),
0
);
m_group
.
insert
(
theDebuggerAction
(
ShowStdNamespace
),
0
);
m_group
.
insert
(
theDebuggerAction
(
ShowQtNamespace
),
0
);
m_group
.
insert
(
theDebuggerAction
(
LogTimeStamps
),
0
);
...
...
src/plugins/debugger/gdb/gdbengine.cpp
View file @
bf077800
...
...
@@ -194,7 +194,8 @@ GdbEngine::GdbEngine(DebuggerManager *manager) :
m_commandTimer
=
new
QTimer
(
this
);
m_commandTimer
->
setSingleShot
(
true
);
m_commandTimer
->
setInterval
(
COMMAND_TIMEOUT
);
m_commandTimer
->
setInterval
(
1000
*
qMin
(
20
,
theDebuggerAction
(
GdbWatchdogTimeout
)
->
value
().
toInt
()));
connect
(
m_commandTimer
,
SIGNAL
(
timeout
()),
SLOT
(
commandTimeout
()));
// Needs no resetting in initializeVariables()
...
...
src/plugins/debugger/gdb/gdbengine.h
View file @
bf077800
...
...
@@ -235,7 +235,6 @@ private: ////////// Gdb Command Management //////////
QHash
<
int
,
GdbCommand
>
m_cookieForToken
;
QTimer
*
m_commandTimer
;
enum
{
COMMAND_TIMEOUT
=
20000
};
QByteArray
m_pendingConsoleStreamOutput
;
QByteArray
m_pendingLogStreamOutput
;
...
...
src/plugins/debugger/gdb/gdboptionspage.cpp
View file @
bf077800
...
...
@@ -51,6 +51,9 @@ QWidget *GdbOptionsPage::createPage(QWidget *parent)
m_ui
.
environmentEdit
);
m_group
.
insert
(
theDebuggerAction
(
UsePreciseBreakpoints
),
m_ui
.
checkBoxUsePreciseBreakpoints
);
m_group
.
insert
(
theDebuggerAction
(
GdbWatchdogTimeout
),
m_ui
.
spinBoxGdbWatchdogTimeout
);
#if 1
m_ui
.
groupBoxPluginDebugging
->
hide
();
...
...
src/plugins/debugger/gdb/gdboptionspage.ui
View file @
bf077800
...
...
@@ -2,6 +2,14 @@
<ui
version=
"4.0"
>
<class>
GdbOptionsPage
</class>
<widget
class=
"QWidget"
name=
"GdbOptionsPage"
>
<property
name=
"geometry"
>
<rect>
<x>
0
</x>
<y>
0
</y>
<width>
397
</width>
<height>
322
</height>
</rect>
</property>
<layout
class=
"QVBoxLayout"
name=
"verticalLayout"
>
<item>
<widget
class=
"QGroupBox"
name=
"groupBoxLocations"
>
...
...
@@ -29,7 +37,7 @@
</widget>
</item>
<item
row=
"0"
column=
"1"
>
<widget
class=
"Utils::PathChooser"
name=
"gdbLocationChooser"
/>
<widget
class=
"Utils::PathChooser"
name=
"gdbLocationChooser"
native=
"true"
/>
</item>
<item
row=
"1"
column=
"0"
>
<widget
class=
"QLabel"
name=
"labelEnvironment"
>
...
...
@@ -55,19 +63,55 @@
</widget>
</item>
<item
row=
"2"
column=
"1"
>
<widget
class=
"Utils::PathChooser"
name=
"scriptFileChooser"
/>
<widget
class=
"Utils::PathChooser"
name=
"scriptFileChooser"
native=
"true"
/>
</item>
<item
row=
"3"
column=
"0"
colspan=
"2"
>
<widget
class=
"QCheckBox"
name=
"checkBoxUsePreciseBreakpoints"
>
<property
name=
"text"
>
<string>
Use full path information to set breakpoints
</string>
</property>
<property
name=
"toolTip"
>
<string>
When this option is checked, the debugger plugin attempts
to extract full path information for all source files from gdb. This is a
slow process but enables setting breakpoints in files with the same file
name in different directories.
</string>
</property>
<property
name=
"text"
>
<string>
Use full path information to set breakpoints
</string>
</property>
</widget>
</item>
<item
row=
"4"
column=
"0"
>
<widget
class=
"QLabel"
name=
"labelGdbWatchdogTimeout"
>
<property
name=
"text"
>
<string>
Gdb timeout:
</string>
</property>
</widget>
</item>
<item
row=
"4"
column=
"1"
>
<widget
class=
"QSpinBox"
name=
"spinBoxGdbWatchdogTimeout"
>
<property
name=
"toolTip"
>
<string>
This is the number of second Qt Creator will wait before
it terminates non-reacting gdb process. The default value of 20 seconds
should be sufficient for most applications, but there are situations when
loading big libraries or listing source files takes much longer than that
on slow machines. In this case the value should be increased.
</string>
</property>
<property
name=
"layoutDirection"
>
<enum>
Qt::LeftToRight
</enum>
</property>
<property
name=
"specialValueText"
>
<string>
<
unlimited
>
</string>
</property>
<property
name=
"minimum"
>
<number>
20
</number>
</property>
<property
name=
"maximum"
>
<number>
1000000
</number>
</property>
<property
name=
"singleStep"
>
<number>
20
</number>
</property>
<property
name=
"value"
>
<number>
20
</number>
</property>
</widget>
</item>
</layout>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment