This is the mail archive of the archer@sourceware.org mailing list for the Archer project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[python] fix 2 backtrace issues


I'm checking this in on the python branch.

This fixes two problems.  First, PR 12119, where multiple filters failed
because we didn't capture the global's value in the lambda.  Second, a
tab in backtrace.py.

Tom

diff --git a/gdb/python/lib/gdb/backtrace.py b/gdb/python/lib/gdb/backtrace.py
index 2baab5f..6bb4fb1 100644
--- a/gdb/python/lib/gdb/backtrace.py
+++ b/gdb/python/lib/gdb/backtrace.py
@@ -1,6 +1,6 @@
 # Filtering backtrace.
 
-# Copyright (C) 2008 Free Software Foundation, Inc.
+# Copyright (C) 2008, 2011 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -32,7 +32,7 @@ an iterator returning such objects."""
     if frame_filter == None:
         frame_filter = constructor
     else:
-        frame_filter = lambda iterator: constructor (frame_filter (iterator))
+        frame_filter = lambda iterator, filter = frame_filter: constructor (filter (iterator))
 
 def create_frame_filter (iter):
     global frame_filter
diff --git a/gdb/python/lib/gdb/command/backtrace.py b/gdb/python/lib/gdb/command/backtrace.py
index ec9a527..2aa5b90 100644
--- a/gdb/python/lib/gdb/command/backtrace.py
+++ b/gdb/python/lib/gdb/command/backtrace.py
@@ -1,6 +1,6 @@
 # New backtrace command.
 
-# Copyright (C) 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 2008, 2009, 2011 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -80,7 +80,7 @@ Use of the 'raw' qualifier avoids any filtering by loadable modules.
 
         # FIXME: provide option to start at selected frame
         # However, should still number as if starting from newest
-	newest_frame = gdb.selected_thread ().newest_frame ()
+        newest_frame = gdb.selected_thread ().newest_frame ()
         iter = itertools.imap (FrameWrapper,
                                FrameIterator (newest_frame))
         if filter:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]