aboutsummaryrefslogtreecommitdiff
path: root/src/tools.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Bug in __lanesclone with 3 parameters mechanism fixed (index was wrong in ↵valid-ptr2022-03-011-4/+4
| | | | inter_copy_function); Some comments improved
* __lanesclone is now called only once with 3 parameters dest, source, size -> ↵Benoit Germain2022-02-081-116/+104
| | | | BREAKS CUSTOM DEEP USERDATA API
* removed explicit calls to malloc/freeBenoit Germain2022-02-071-6/+14
| | | | Lane and linda userdata were allocated with malloc/free, preventing embedders from fully controlling memory operations. Now all internal Lanes allocations go through the master state alloc function.
* Changed all indentations to all whitespacesBenoit Germain2022-02-071-1654/+1654
| | | | Tabs mess up alignment of stack contents comments, so I'm done with them.
* fix function transfer with lua_dump for Lua 5.4 failing for functions big ↵Benoit Germain2021-07-081-14/+26
| | | | enough to necessitate a buffer reallocation
* fix stack overflow when transfering a clonable userdata referencing itself ↵Benoit Germain2021-06-261-77/+177
| | | | through a uservalue
* correctly transfer the uservalue of a deep userdataBenoit Germain2021-06-241-397/+1
|
* __lanesclone now receives the original as light userdata the first time it ↵Benoit Germain2021-06-231-4/+6
| | | | is called
* Moved cancellation code in separate filesBenoit Germain2019-04-221-2/+2
|
* Fix clonable userdata uservalue transferBenoit Germain2018-11-301-5/+4
|
* don't test __lanesignore for POD types (-> slightly faster when trasnfering ↵Benoit Germain2018-11-301-66/+98
| | | | | | lots of data) + more code refactoring
* Split a megafunction in smaller partsBenoit Germain2018-11-281-234/+259
|
* Lua 5.4 supportBenoit Germain2018-11-271-17/+74
|
* protect_allocator configure option is gone, long live allocator (more ↵Benoit Germain2018-11-251-10/+99
| | | | embedders-friendly)
* finish registry access revampBenoit Germain2018-11-231-7/+5
|
* Fix a buffer overrunBenoit Germain2018-11-231-1/+1
|
* Raise an error instead of crashing when attempting to transfer a non-deep ↵Benoit Germain2018-11-231-1/+8
| | | | full userdata
* More DEBUGSPEW loggingBenoit Germain2018-11-211-33/+89
|
* Internal code tweaksBenoit Germain2018-11-191-48/+59
| | | | | | * Registry access code utility macros * CONFIG_REGKEY and LOOKUP_REGKEY are now lightuserdata instead of strings * Stack checking debug macros improvements
* fix a bunch of compilation warnings (issue #157)Benoit Germain2018-11-111-63/+66
|
* __lanesclone mechanism should actually work nowBenoit Germain2018-11-071-16/+73
|
* Little bugfix for __lanesclone supportBenoit Germain2018-11-071-5/+8
| | | | | Don't fall back to the light userdata demotion when cloning succeeded (cloning still doesn't work yet)
* Fix compilation warning glitchesBenoit Germain2018-11-051-1/+1
|
* fix an internal error trying to call on_state_create in a lane without any ↵Benoit Germain2018-11-031-31/+16
| | | | | | | libs loaded always duplicate the config structure in new lanes even when no libraries are initialized by the generator
* Improve LuaJIT-x64 compatibilityBenoit Germain2018-10-301-3/+4
| | | | | Restrict internal "light userdata constants" to 47 significant bits when compiling against LuaJIT-x64
* Merge changesBenoit Germain2018-10-291-67/+86
|\
| * More MinGW buildfixes (I hope)Benoit Germain2018-10-251-13/+13
| |
| * Fix Lanes build by reorganizing types around a bitBenoit Germain2018-10-251-28/+28
| |
| * verbose_error improvementsBenoit Germain2018-07-091-36/+55
| | | | | | | | | | | | * Fix a stack overflow when copying large tables with verbose_errors option enabled * Support for integer formatting in verbose errors
* | add support for deep userdata cloningBenoit Germain2018-10-291-92/+107
|/
* Deep userdata improvementsBenoit Germain2017-08-021-1/+1
| | | | | Support for user-provided __gc Improved example
* Fix for deep-aware modulesBenoit Germain2017-08-011-38/+10
| | | | | | Don't crash when using a module that creates Lanes-compatible deep userdata. Added a sample deep-aware module.
* Merge pull request #126 from aidanholm/masterBenoit Germain2017-06-051-1/+1
|\ | | | | Fix build with USE_DEBUG_SPEW
| * Fix build with USE_DEBUG_SPEWAidan Holm2016-12-131-1/+1
| |
* | Table transfer improvementsBenoit Germain2017-06-051-91/+227
| | | | | | | | | | | | | | | | * new API function lanes.register( "name", module) to manually register a module table after it was required * Transfering registered module tables will link the equivalent in the destination state instead of cloning it * bumped version to 3.11
* | prepare the way for module table lookupBenoit Germain2017-05-161-99/+91
| | | | | | | | | | | | | | Add tables when populating lookup databases. The idea is, when transfering a known table, to perform a lookup in the destination for the equivalent table instead of cloning the original (not implemented yet).
* | Some code formatting and other non-changesBenoit Germain2017-05-121-50/+52
| |
* | Suppress a #pragma messageBenoit Germain2017-05-101-1/+1
| |
* | Improve LuaJIT supportBenoit Germain2017-05-101-6/+13
|/ | | | | | | * better LuaJIT-specific headers detection * add LuaJIT-specific libraries when known * properly raise an error when attempting to transfer a LUAT_CDATA value * some compilationg warning fixes
* Added __lanesignore field for metatablesIlya Uvarenkov2016-04-201-1/+17
|
* Fix standard library lists for Lua 5.3mpeterv2015-04-121-0/+5
| | | | | Fixes crash on require under Lua 5.3 without LUA_COMPAT_5_2. Fixes utf8 library not loaded under Lua 5.3.
* Merge pull request #115 from mpeterv/fix-lua-dumpBenoit Germain2015-04-121-2/+2
|\ | | | | Do not strip debug info of dumped functions on Lua 5.3
| * Do not strip debug info of dumped functions on Lua 5.3mpeterv2015-02-251-2/+2
| |
* | Apply _ENV-related logic to Lua 5.3mpeterv2015-02-251-5/+5
|/ | | | It was only applied to Lua 5.2.
* preliminary Lua 5.3 supportBenoit Germain2014-12-161-5/+4
| | | | Untested, but it might just work :).
* fix lookup of globals created by on_state_createBenoit Germain2014-07-081-0/+19
| | | | | | * Postponed _G scan for function lookup database to after on_state_create invocation * Fixed a crash when USE_DEBUG_SPEW == 1
* Deep userdata changesBenoit Germain2014-06-171-468/+4
| | | | | | | | | * bumped version to 3.9.6 * separate deep userdata code in a dedicated file to allow external modules to implement Lanes-compatible deep userdata without requiring a binary dependency against the Lanes module. because of this linda_id function(eDO_metatable) must push 2 values on the stack: a metatable and a deep version string obtained from luaG_pushdeepversion()
* Fix build issues with compat.c/hBenoit Germain2014-04-231-3/+1
|
* moved compatibility code in a separate fileBenoit Germain2014-04-031-43/+0
|
* Don't mutex-wrap require() more than onceBenoit Germain2014-03-191-4/+5
|