Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Tobias Hunger
qt-creator
Commits
bf077800
Commit
bf077800
authored
Dec 09, 2009
by
hjk
Browse files
debugger: make watchdog timeout configurable
parent
4db1b371
Changes
7
Hide whitespace changes
Inline
Side-by-side
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
Supports
Markdown
0%
Try again
or
attach a new 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