[Lldb-commits] [lldb] r155255 - in /lldb/trunk/examples/python: crashlog.py symbolication.py

Greg Clayton gclayton at apple.com
Fri Apr 20 16:31:27 PDT 2012


Author: gclayton
Date: Fri Apr 20 18:31:27 2012
New Revision: 155255

URL: http://llvm.org/viewvc/llvm-project?rev=155255&view=rev
Log:
Fixed some issues with symbolicating things. Fixed symbolication.add_module() to not use the resolved_path before we have tried to locate it. Fixed crashlog.locate_module_and_debug_symbols() to return true and false correctly.


Modified:
    lldb/trunk/examples/python/crashlog.py
    lldb/trunk/examples/python/symbolication.py

Modified: lldb/trunk/examples/python/crashlog.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/examples/python/crashlog.py?rev=155255&r1=155254&r2=155255&view=diff
==============================================================================
--- lldb/trunk/examples/python/crashlog.py (original)
+++ lldb/trunk/examples/python/crashlog.py Fri Apr 20 18:31:27 2012
@@ -114,7 +114,7 @@
         def locate_module_and_debug_symbols(self):
             if self.resolved_path:
                 # Don't load a module twice...
-                return 0
+                return True
             print 'Locating %s %s...' % (self.uuid, self.path),
             if os.path.exists(self.dsymForUUIDBinary):
                 dsym_for_uuid_command = '%s %s' % (self.dsymForUUIDBinary, self.uuid)
@@ -144,16 +144,15 @@
                             break;
                 if not self.resolved_path:
                     print "error: file %s '%s' doesn't match the UUID in the installed file" % (self.uuid, self.path)
-                    return 0
+                    return False
             if (self.resolved_path and os.path.exists(self.resolved_path)) or (self.path and os.path.exists(self.path)):
                 print 'ok'
-                if self.path != self.resolved_path:
+                if self.resolved_path:
                     print '  exe = "%s"' % self.resolved_path 
                 if self.symfile:
                     print ' dsym = "%s"' % self.symfile
-                return 1
-            else:
-                return 0
+                return True
+            return False
         
     
         

Modified: lldb/trunk/examples/python/symbolication.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/examples/python/symbolication.py?rev=155255&r1=155254&r2=155255&view=diff
==============================================================================
--- lldb/trunk/examples/python/symbolication.py (original)
+++ lldb/trunk/examples/python/symbolication.py Fri Apr 20 18:31:27 2012
@@ -282,17 +282,16 @@
     def add_module(self, target):
         '''Add the Image described in this object to "target" and load the sections if "load" is True.'''
         if target:
-            resolved_path = self.get_resolved_path();
             # Try and find using UUID only first so that paths need not match up
             if self.uuid:
                 self.module = target.AddModule (None, None, str(self.uuid))
             if not self.module:
-                if self.locate_module_and_debug_symbols ():
-                    path_spec = lldb.SBFileSpec (resolved_path)
-                    #print 'target.AddModule (path="%s", arch="%s", uuid=%s)' % (resolved_path, self.arch, self.uuid)
-                    self.module = target.AddModule (resolved_path, self.arch, self.uuid)
+                self.locate_module_and_debug_symbols ()
+                resolved_path = self.get_resolved_path()
+                print 'target.AddModule (path="%s", arch="%s", uuid=%s, symfile="%s")' % (resolved_path, self.arch, self.uuid, self.symfile)
+                self.module = target.AddModule (resolved_path, self.arch, self.uuid)#, self.symfile)
             if not self.module:
-                return 'error: unable to get module for (%s) "%s"' % (self.arch, resolved_path)
+                return 'error: unable to get module for (%s) "%s"' % (self.arch, self.get_resolved_path())
             if self.has_section_load_info():
                 return self.load_module(target)
             else:





More information about the lldb-commits mailing list