summaryrefslogtreecommitdiff
path: root/plugins/dex/method.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2018-05-07 15:57:38 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2018-05-07 15:57:38 (GMT)
commit14a2c6dab00ab8ffff4c37b6d088d332bc6abd6c (patch)
tree8cec7da41a5c7b728dc3d796ebdac0b85ff46a9d /plugins/dex/method.c
parent998f0697355ddfb17c5828c3ef236a5c795ee191 (diff)
Kept methods of annotated classes during loading.
Diffstat (limited to 'plugins/dex/method.c')
-rw-r--r--plugins/dex/method.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/plugins/dex/method.c b/plugins/dex/method.c
index 4013436..5b7b30e 100644
--- a/plugins/dex/method.c
+++ b/plugins/dex/method.c
@@ -24,6 +24,7 @@
#include "method.h"
+#include <assert.h>
#include <stddef.h>
#include <string.h>
@@ -43,7 +44,11 @@ struct _GDexMethod
GBinRoutine *routine; /* Représentation interne */
- /* FIXME : méthode interne seulement */
+ /**
+ * Les champs suivants ne sont renseignés que pour les objets mis
+ * en place à partir du constructeur g_dex_method_new_defined().
+ */
+
encoded_method info; /* Propriétés de la méthode */
bool has_body; /* Indication de présence */
code_item body; /* Corps de la méthode */
@@ -439,6 +444,8 @@ DexVariableIndex g_dex_method_get_variable(const GDexMethod *method, uint32_t in
const code_item *body; /* Corps de la méthode */
uint32_t pivot; /* Bascule pour les arguments */
+ assert(method->has_body);
+
info = &method->info;
body = &method->body;