summaryrefslogtreecommitdiff
path: root/plugins/itanium
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2021-11-30 01:56:58 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2021-11-30 01:56:58 (GMT)
commitde06b3ebc7021c20d94013bd39f4ba2c2e5ce3fa (patch)
tree463af79c1045e4180958d9ef9d0af33d3eebf7b9 /plugins/itanium
parent7101133d0e862d2296d9709dc6ef1e64ebbc2ea0 (diff)
Access demanglers by key.
Diffstat (limited to 'plugins/itanium')
-rw-r--r--plugins/itanium/core.c2
-rw-r--r--plugins/itanium/demangler.c27
2 files changed, 28 insertions, 1 deletions
diff --git a/plugins/itanium/core.c b/plugins/itanium/core.c
index 6bf67c1..dd74f53 100644
--- a/plugins/itanium/core.c
+++ b/plugins/itanium/core.c
@@ -65,7 +65,7 @@ G_MODULE_EXPORT bool chrysalide_plugin_init(GPluginModule *plugin)
{
bool result; /* Bilan à retourner */
- result = register_demangler_type("itanium", G_TYPE_ITANIUM_DEMANGLER);
+ result = register_demangler_type(G_TYPE_ITANIUM_DEMANGLER);
#ifdef HAVE_PYTHON3_BINDINGS
if (result)
diff --git a/plugins/itanium/demangler.c b/plugins/itanium/demangler.c
index 5fe0d09..fc445f5 100644
--- a/plugins/itanium/demangler.c
+++ b/plugins/itanium/demangler.c
@@ -58,6 +58,9 @@ static void g_itanium_demangler_dispose(GItaniumDemangler *);
/* Procède à la libération totale de la mémoire. */
static void g_itanium_demangler_finalize(GItaniumDemangler *);
+/* Fournit la désignation interne du décodeur de désignations. */
+static char *g_itanium_demangler_get_key(const GItaniumDemangler *);
+
/* Indique le type défini pour un décodeur de désignations. */
@@ -88,6 +91,7 @@ static void g_itanium_demangler_class_init(GItaniumDemanglerClass *klass)
demangler = G_COMP_DEMANGLER_CLASS(klass);
+ demangler->get_key = (get_demangler_key_fc)g_itanium_demangler_get_key;
demangler->can_demangle = (can_be_demangled_fc)NULL;
demangler->ns_sep = "::";
@@ -173,3 +177,26 @@ GCompDemangler *g_itanium_demangler_new(void)
return G_COMP_DEMANGLER(result);
}
+
+
+/******************************************************************************
+* *
+* Paramètres : demangler = décodeur à consulter. *
+* *
+* Description : Fournit la désignation interne du décodeur de désignations. *
+* *
+* Retour : Simple chaîne de caractères. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+static char *g_itanium_demangler_get_key(const GItaniumDemangler *demangler)
+{
+ char *result; /* Désignation à renvoyer */
+
+ result = strdup("itanium");
+
+ return result;
+
+}