Commit graph

11 commits

Author SHA1 Message Date
lda
cdf4430a9e [FIX] Fix issue with const strings which may be invalidated 2024-05-26 22:01:06 +02:00
Jordan Bancino
31c9bc7f1c Update Cytoplasm license text for 2024. 2024-01-13 17:56:58 -05:00
Jordan Bancino
662696ce12 C99 Compliance (#29)
This pull request brings Cytoplasm up from C89 to C99, which makes it much more portable across platforms. In particular, this pull request solves a number of issues with 32-bit platforms.

Closes #28.
Closes #12.
Closes #20.

Reviewed-on: https://git.telodendria.io/Telodendria/Cytoplasm/pulls/29
2024-01-13 17:13:45 -05:00
Jordan Bancino
a177c55c26 Make Memory use a recursive mutex.
This allows some additional operations to be performed inside the memory
hooks, although it's still a bad idea to allocate or free memory while
inside the hook.
2023-06-04 18:44:37 +00:00
Jordan Bancino
bd1918ee05 Re-add memory bounds checking.
Also fixed a recursive lock error in some configurations, and replaced
a usage of strcpy() with strncpy().
2023-05-29 23:53:17 +00:00
Jordan Bancino
a7de0e4d16 Remove memory bound checking logic.
While this was nifty and impressive, it seems like it is too easy to mess
up, and is too platform-specific.
2023-05-26 23:10:00 +00:00
Jordan Bancino
b02ad117c4 Fix SIGBUS on some platforms. Memory alignment matters!
This is a temporary fix; I'm not convinced it will work on all platforms,
so I will probably end up removing all of the memory boundary code
altogether.
2023-05-26 23:05:35 +00:00
Jordan Bancino
3a78e50044 Fix incorrect block size. 2023-05-25 00:03:17 +00:00
Jordan Bancino
061d9df739 Add sane default memory hook to Cytoplasm, fix more leaks in json. 2023-05-23 22:43:37 +00:00
Jordan Bancino
2aa74e3156 Add some basic heap memory bounds protection. 2023-05-21 13:24:00 +00:00
Jordan Bancino
40eac30b5c Import new Cytoplasm library based off of code from Telodendria.
Telodendria doesn't use this library yet, but it will soon.
2023-05-13 17:30:09 +00:00