diff --git a/scripts/symbolize.py b/scripts/symbolize.py
index abed7ba..1eecf75 100755
--- a/scripts/symbolize.py
+++ b/scripts/symbolize.py
@@ -394,13 +394,14 @@
                     for k in self._elfs:
                         e = self._elfs[k]
                         if (len(e) >= 3):
+                            # TA executable or library
                             self._out.write(e[2].strip())
-                        elf = self.get_elf(e[0])
-                        if elf:
-                            rpath = os.path.realpath(elf)
-                            path = self.pretty_print_path(rpath)
-                            self._out.write(' (' + path + ')')
-                        self._out.write('\n')
+                            elf = self.get_elf(e[0])
+                            if elf:
+                                rpath = os.path.realpath(elf)
+                                path = self.pretty_print_path(rpath)
+                                self._out.write(' (' + path + ')')
+                            self._out.write('\n')
                 # Here is a good place to resolve the abort address because we
                 # have all the information we need
                 if self._saved_abort_line:
