Commit graph

278 commits

Author SHA1 Message Date
Ignacio Etcheverry
b271aa48e4 Mono: Script lifetime fixes
- alloc_language_binding: Use strong GC handle as well for references. Fixes #15138
- Set the native instance field of Godot.Object to IntPtr.Zero when it's freed.
- Create weak handles without tracking resurrection (that was causing trouble). This means we have to call notification predelete before queueing a native Object for deletion, and use the MonoObject* passed by the finalizer because the weak GC handle target will return NULL at this point.
2018-01-01 03:05:13 +01:00
Noshyaar
ab444a8ca9
Merge pull request #14996 from neikeq/enums-mono
Mono: Make the bindings generator output enums
2017-12-27 10:29:00 +07:00
Ignacio Etcheverry
0a0a44da8d Mono: Make the bindings generator output enums
- Switch to PascalCase for constants names
2017-12-24 04:20:41 +01:00
Ignacio Etcheverry
6e3d4ee9a6 Marshal NULL MonoString* as empty Godot string 2017-12-24 03:32:40 +01:00
PJB3005
7368a0e0f0 Fix fatal mono logs not getting logged to disk.
They aborted the application without flushing the log file.

Also there was a typo.
2017-12-19 17:36:33 +01:00
Rémi Verschelde
13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Ignacio Etcheverry
b51b3dc030 Mono: Fix compiler error with Variant::operator AABB() 2017-11-18 18:13:57 +01:00
Ferenc Arn
d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
Ignacio Etcheverry
3c97a9543d
Merge pull request #12549 from neikeq/seriously-do-they
Mono cleanup fixes
2017-11-01 01:56:16 +01:00
Ignacio Etcheverry
a018cbaee1 Fix thread checking to queue instances for deletion 2017-11-01 01:51:12 +01:00
Ignacio Etcheverry
0525b63421 Use mono_gc_wbarrier_set_arrayref for Array marshalling 2017-11-01 00:17:34 +01:00
Ignacio Etcheverry
619e4eb23d
Merge pull request #12491 from neikeq/waitasecond···
Fix FrameworkPathOverride and assemblies path loop
2017-10-29 22:33:27 +01:00
Ignacio Etcheverry
aa5a0b550f Fix FrameworkPathOverride and assemblies path loop 2017-10-29 22:22:38 +01:00
Ignacio Etcheverry
27b7fb8e66 Mono: Add build project button and reload interval 2017-10-29 05:57:38 +01:00
Unknown
a2247d45fc Mono: Use "UnnamedProject" if application/config/name is empty 2017-10-27 21:22:54 +02:00
Ignacio Etcheverry
45e5e23ee8 Mono: Prevent raising exceptions in native code
For now we will just print the exceptions we catch. Later, we should use something similar to 'mono_set_pending_exception(ex)'.
2017-10-23 00:35:14 +02:00
Ignacio Etcheverry
acaaf2e440 Merge pull request #12326 from neikeq/n
Fix set field from MonoObject*
2017-10-22 22:14:10 +02:00
Ignacio Etcheverry
ae725969d3 Fix set field from MonoObject* 2017-10-22 22:07:52 +02:00
Rémi Verschelde
6361e24f29 Cleanup unnecessary debug prints 2017-10-21 20:41:07 +02:00
Ignacio Etcheverry
6e6b455d1f Export attribute fixes and improvements
- Allow non-public fields to be exported as well (to avoid confusion).
- Set PROPERTY_HINT_RESOURCE_TYPE for resource derived fields.
- Support enums and automatically fill PROPERTY_HINT_ENUM's hint_string for enum fields.
2017-10-17 14:42:13 +02:00
Ignacio Etcheverry
63369ec306 Re-write SignalAwaiter implementation
Old implementation had issues where you could only await on the same signal of the same source once.
2017-10-16 03:54:23 +02:00
Ignacio Etcheverry
14b9ad1296 Fix wrong array index 2017-10-10 18:29:56 +02:00
Ignacio Etcheverry
18d3ba0c50 Fix getting struct elements from MonoArray (#11978)
* Fix getting struct elements from MonoArray
* Revert undesired change
2017-10-10 00:25:36 +02:00
Ignacio Etcheverry
ff28569d16 Fixed IntPtr unboxing (#11949)
- Fix boolean never reset to false
- Fix IntPtr unboxing and cleanup
2017-10-09 00:10:54 +02:00
Ignacio Etcheverry
eb920406ae Fix dot separated assembly names confused with file extensions 2017-10-07 22:00:35 +02:00
Ignacio Etcheverry
9eda9be3cf Fix assembly load hooks 2017-10-07 04:21:55 +02:00
Ignacio Etcheverry
1d309439cb Uninitialized local and domain finalize fixes
- Make sure to run the GC before and after finalizing the scripts domain.
2017-10-05 00:12:36 +02:00
Ignacio Etcheverry
e36fb95c50 Added mono module 2017-10-03 00:01:26 +02:00