Avoid leaking the vmmap allocated by the kernel for the thread_act_array_t
[mono.git] / mono / metadata / mono-debug.h
index 8d6385e9a90e95f8160a0718c5500a85aaba7643..d4ff5b9a0241bbdd19bdf8e25a66150e6c5e89fe 100644 (file)
@@ -6,11 +6,12 @@
 #ifndef __MONO_DEBUG_H__
 #define __MONO_DEBUG_H__
 
-#include <glib.h> /* GHashTable dep below */
 #include <mono/utils/mono-publib.h>
 #include <mono/metadata/image.h>
 #include <mono/metadata/appdomain.h>
 
+MONO_BEGIN_DECLS
+
 typedef struct _MonoSymbolTable                        MonoSymbolTable;
 typedef struct _MonoDebugDataTable             MonoDebugDataTable;
 
@@ -27,6 +28,7 @@ typedef struct _MonoDebugMethodAddressList    MonoDebugMethodAddressList;
 typedef struct _MonoDebugClassEntry            MonoDebugClassEntry;
 
 typedef struct _MonoDebugMethodInfo            MonoDebugMethodInfo;
+typedef struct _MonoDebugLocalsInfo            MonoDebugLocalsInfo;
 typedef struct _MonoDebugSourceLocation                MonoDebugSourceLocation;
 
 typedef struct _MonoDebugList                  MonoDebugList;
@@ -48,7 +50,7 @@ struct _MonoDebugList {
 };
 
 struct _MonoSymbolTable {
-       guint64 magic;
+       uint64_t magic;
        uint32_t version;
        uint32_t total_size;
 
@@ -130,12 +132,11 @@ struct _MonoDebugVarInfo {
 };
 
 #define MONO_DEBUGGER_MAJOR_VERSION                    81
-#define MONO_DEBUGGER_MINOR_VERSION                    5
+#define MONO_DEBUGGER_MINOR_VERSION                    6
 #define MONO_DEBUGGER_MAGIC                            0x7aff65af4253d427ULL
 
 extern MonoSymbolTable *mono_symbol_table;
 extern MonoDebugFormat mono_debug_format;
-extern GHashTable *mono_debug_handles;
 extern int32_t mono_debug_debugger_version;
 extern int32_t _mono_debug_using_mono_debugger;
 
@@ -172,8 +173,8 @@ mono_debug_free_method_jit_info (MonoDebugMethodJitInfo *jit);
 void
 mono_debug_add_delegate_trampoline (void* code, int size);
 
-int
-mono_debug_lookup_locals (MonoMethod *method, char ***names, int **indexes);
+MonoDebugLocalsInfo*
+mono_debug_lookup_locals (MonoMethod *method);
 
 /*
  * Line number support.
@@ -203,4 +204,6 @@ int             mono_debugger_insert_breakpoint           (const char *method_na
 void mono_set_is_debugger_attached (mono_bool attached);
 mono_bool mono_is_debugger_attached (void);
 
+MONO_END_DECLS
+
 #endif /* __MONO_DEBUG_H__ */