nemiver r943 - in trunk: . src/persp/dbgperspective
- From: dodji svn gnome org
- To: svn-commits-list gnome org
- Subject: nemiver r943 - in trunk: . src/persp/dbgperspective
- Date: Sun, 2 Nov 2008 16:55:58 +0000 (UTC)
Author: dodji
Date: Sun Nov 2 16:55:58 2008
New Revision: 943
URL: http://svn.gnome.org/viewvc/nemiver?rev=943&view=rev
Log:
Fix #555733
* src/persp/dbgperspective/nmv-dbg-perspective.cc:
(DBGPerspective::on_debugger_breakpoint_deleted_signal): If we
received this signal as part of process of executing a program,
do not bother.
This entry should fix bug #555733.
Modified:
trunk/ChangeLog
trunk/src/persp/dbgperspective/nmv-dbg-perspective.cc
Modified: trunk/src/persp/dbgperspective/nmv-dbg-perspective.cc
==============================================================================
--- trunk/src/persp/dbgperspective/nmv-dbg-perspective.cc (original)
+++ trunk/src/persp/dbgperspective/nmv-dbg-perspective.cc Sun Nov 2 16:55:58 2008
@@ -168,6 +168,8 @@
"ISO-8859-15",
};
+const char* I_DEBUGGER_COOKIE_EXECUTE_PROGRAM = "i-debugger-execute-program";
+
#define SIZE_OF_SUPPORTED_ENCODINGS \
sizeof (SUPPORTED_ENCODINGS)/sizeof (SUPPORTED_ENCODINGS[0])
@@ -2204,15 +2206,25 @@
void
DBGPerspective::on_debugger_breakpoint_deleted_signal
- (const IDebugger::BreakPoint &a_break,
+ (const IDebugger::BreakPoint &,
int a_break_number,
const UString &a_cookie)
{
LOG_FUNCTION_SCOPE_NORMAL_DD;
- if (a_break.number () || a_cookie.empty ()) {}
-
NEMIVER_TRY
+
+ if (a_cookie == I_DEBUGGER_COOKIE_EXECUTE_PROGRAM) {
+ //We received this event because we were triggering the
+ //execution of a program, in DBGPerspective::execute_program().
+ //So as part of that function, we asked to clear all the opened files
+ //and to delete all the set breakpoints.
+ //This event is the result the request to delete all the
+ //breakpoints. The request was issued after the opened files got
+ //closed. So we won't be able to find the files to visualy delete the
+ //breakpoints from. So let's just pass.
+ return;
+ }
delete_visual_breakpoint (a_break_number);
SourceEditor* editor = get_current_source_editor ();
THROW_IF_FAIL (editor);
@@ -4804,7 +4816,8 @@
for (bp_it = m_priv->breakpoints.begin ();
bp_it != m_priv->breakpoints.end ();
++bp_it) {
- dbg_engine->delete_breakpoint (bp_it->first);
+ dbg_engine->delete_breakpoint (bp_it->first,
+ I_DEBUGGER_COOKIE_EXECUTE_PROGRAM);
}
// clear data gathered by the old session
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]