Add a way to retrieve stack bottom of the main thread
I'm working on Nim bindings and Nim GC needs to know the stack boundaries to check whether certain pointers are located on the stack or in the heap. This commit adds godot_get_stack_bottom procedure to gdnative module which returns pointer to the stack bottom of the main thread. Later on this may be improved to return stack bottom of the current thread.
This commit is contained in:
parent
b31973b64d
commit
3b88476130
4 changed files with 25 additions and 0 deletions
|
|
@ -33,6 +33,7 @@
|
|||
#include "error_macros.h"
|
||||
#include "gdnative.h"
|
||||
#include "global_constants.h"
|
||||
#include "os/os.h"
|
||||
#include "project_settings.h"
|
||||
#include "variant.h"
|
||||
|
||||
|
|
@ -89,6 +90,10 @@ godot_object GDAPI *godot_global_get_singleton(char *p_name) {
|
|||
return (godot_object *)ProjectSettings::get_singleton()->get_singleton_object(String(p_name));
|
||||
} // result shouldn't be freed
|
||||
|
||||
void GDAPI *godot_get_stack_bottom() {
|
||||
return OS::get_singleton()->get_stack_bottom();
|
||||
}
|
||||
|
||||
// MethodBind API
|
||||
|
||||
godot_method_bind GDAPI *godot_method_bind_get_method(const char *p_classname, const char *p_methodname) {
|
||||
|
|
|
|||
|
|
@ -245,6 +245,10 @@ void GDAPI godot_object_destroy(godot_object *p_o);
|
|||
|
||||
godot_object GDAPI *godot_global_get_singleton(char *p_name); // result shouldn't be freed
|
||||
|
||||
////// OS API
|
||||
|
||||
void GDAPI *godot_get_stack_bottom(); // returns stack bottom of the main thread
|
||||
|
||||
////// MethodBind API
|
||||
|
||||
typedef struct {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue