summaryrefslogtreecommitdiff
path: root/src/format/symbol.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2009-12-01 23:13:37 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2009-12-01 23:13:37 (GMT)
commitc6409e2c6a390a7cca40da8572c93a5268e90a27 (patch)
treea2163e55f17d2b6299e59a7539d01b8ae0020380 /src/format/symbol.c
parentfc363c31cc0a24e026bac74b5f62f33f44bf0143 (diff)
Improved the Itanium demangling.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@139 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/format/symbol.c')
-rw-r--r--src/format/symbol.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/format/symbol.c b/src/format/symbol.c
index b5e329b..3ac2d6d 100644
--- a/src/format/symbol.c
+++ b/src/format/symbol.c
@@ -27,9 +27,6 @@
#include <string.h>
-#include "../analysis/routine.h"
-
-
/* Symbole d'exécutable (instance) */
struct _GBinSymbol
@@ -169,7 +166,14 @@ SymbolType g_binary_symbol_get_target_type(const GBinSymbol *symbol)
const char *g_binary_symbol_to_string(const GBinSymbol *symbol)
{
- return (symbol->alt != NULL ? symbol->alt : symbol->name);
+ const char *result; /* Désignation à retourner */
+
+ if (symbol->extra.routine != NULL)
+ result = g_binary_routine_get_name(symbol->extra.routine);
+
+ else result = (symbol->alt != NULL ? symbol->alt : symbol->name);
+
+ return result;
}