Peter Nelson
28cc0079f2
Codechange: Create ScriptAllocator with make_unique instead of new. ( #14340 )
2025-06-11 23:28:08 +01:00
Rubidium
a48a5f0cc6
Codechange: replace memcpy with std::copy_n
2025-05-10 16:50:58 +02:00
Rubidium
1f411f8a16
Codechange: use string_view for squirrel parameter checks
2025-05-04 16:59:06 +02:00
Rubidium
0bc773215e
Codechange: use std::optional<std::string_view> to make the intent of function clearer
2025-05-03 23:02:09 +02:00
Rubidium
ec79ceb2be
Codechange: use std::string_view for sq_pushstring
2025-05-03 23:02:09 +02:00
Rubidium
3020e615a9
Codechange: use std::string_view for squirrel compilation
2025-05-03 23:02:09 +02:00
Rubidium
278aee2c19
Codechange: use std::string_view for sq_getstring
2025-05-03 14:24:28 +02:00
Rubidium
c7056866a3
Codechange: remove manual param count; in all cases strlen(params) == nparams
2025-04-27 17:57:53 +02:00
Rubidium
b9667ec3d1
Codechange: use std::string_view for scripts
2025-04-27 17:00:25 +02:00
frosch
2a62eea005
Codefix: Comment style. ( #14064 )
2025-04-21 17:25:09 +02:00
frosch
9bcd3feb17
Codechange: Make SQFile a buffered reader, based on StringConsumer.
2025-04-13 21:59:10 +02:00
frosch
7157e96664
Remove: Drop support for UCS2/UTF-16 encoded scripts. ( #13992 )
2025-04-13 15:52:01 +02:00
Rubidium
3790f29156
Codechange: use std::allocator over malloc/free for Squirrel memory management
2025-03-03 16:42:17 +01:00
Rubidium
15dcf56dad
Codechange: remove ZeroedMemoryAllocator
2025-02-28 20:12:44 +01:00
Loïc Guilloux
ae72e15951
Codefix b2c5712: [Script] Squirrel::GetRealInstance doesn't work with negative index ( #13658 )
2025-02-25 13:13:31 +01:00
Loïc Guilloux
c06f5cff09
Codefix b2c5712: [Script] Properly check sq_instanceof return value ( #13657 )
2025-02-24 21:09:04 +00:00
Rubidium
02f040b22a
Codechange: remove unused alloc_func.hpp includes
2025-02-24 20:00:19 +01:00
Loïc Guilloux
b2c5712319
Fix: [Script] Improve type checking of parameters ( #13522 )
2025-02-13 13:46:21 +01:00
Peter Nelson
908ee7292b
Codechange: Replace all FILE * with FileHandle RAII class. ( #12718 )
...
This removes the need to manually ensure all files are closed.
2024-09-16 08:45:26 +01:00
Rubidium
c6411168d8
Cleanup: missing spaces before continuation * in some comments
2023-11-01 22:56:11 +01:00
Rubidium
c9276c2959
Codechange: replace x.size() == 0 with x.empty()
2023-10-20 23:05:43 +02:00
Rubidium
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Rubidium
fbd71a9d72
Codechange: replace C-style string processing with C++-style for the listing callbacks
2023-06-05 23:25:49 +02:00
Rubidium
275ebf4509
Codechange: replace fprintf(<FILE*> with fmt::print(<FILE*>
2023-05-21 15:12:02 +02:00
Rubidium
c518293135
Codechange: replace printf with fmt::print
2023-05-21 15:12:02 +02:00
Peter Nelson
83f2ad500e
Codechange: stdarg.h include not needed as cstdarg is included.
2023-05-17 10:14:41 +01:00
Peter Nelson
56085be9bd
Codechange: Move includes for common STL headers to stdafx.
2023-05-17 10:14:41 +01:00
Rubidium
b1b578f988
Cleanup: stredup-ing string variant for calling scripts
2023-05-14 22:54:10 +02:00
Rubidium
ab51175db2
Codechange: use std::string for script config
2023-05-14 22:54:10 +02:00
Rubidium
a30f7c83bd
Codechange: use std::string for script names to load
2023-05-14 22:54:10 +02:00
Rubidium
3d8d99ba11
Add: method to call script functions with std::string
2023-05-14 22:54:10 +02:00
Rubidium
8f24901843
Codechange: replace printf with PRINTF macros by fmt::format for scripts
2023-04-24 17:51:25 +02:00
Rubidium
8b93e45e22
Codechange: use string/fmt instead of printf for squirrel's PRINTFUNC
2023-04-24 17:51:25 +02:00
Charles Pigott
b282664242
Codechange: Replace all usages of alloca/AllocaM with more modern/less discouraged alternatives
2023-04-15 16:57:00 +01:00
Loïc Guilloux
9642e87bc8
Fix: [Script] Access to enum/consts defined outside of main.nut ( #10573 )
2023-03-25 23:07:47 +01:00
Loïc Guilloux
a53cfeef13
Fix #9548 , e5fedcd: [Squirrel] Crash during engine cleanup after reaching memory limit on realloc ( #9592 )
2021-10-02 21:08:42 +02:00
Loïc Guilloux
ccd586a736
Fix #9588 , 140a96b: [Squirrel] Reaching memory limit during script registration could prevent further script detections ( #9589 )
...
Also the memory allocation triggering the limit was never freed.
And if the exception was thrown in a constructor using placement new, the pre-allocated memory was not freed either.
2021-10-02 15:13:58 +02:00
Rubidium
3237e97b35
Cleanup: [Script] Use nullptr instead of 0 or NULL
2021-06-17 16:18:30 +02:00
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
2021-06-13 12:45:45 +02:00
Patric Stout
28e90769f7
Codechange: use "[[maybe_unused]]" instead of a wide variety of other ways we had
...
While at it, replace OTTD_ASSERT with WITH_ASSERT, as this
is always set if assert() is valid. No matter if NDEBUG is set
or not.
2021-06-03 17:30:00 +02:00
Patric Stout
7713c3e3cc
Codechange: move casting a "const char *" to "char *" to the caller
...
It is not nice to have your definition say you won't change a value
while in fact the whole reason for your existance is to change it.
2021-05-29 16:23:59 +02:00
Patric Stout
ca9a7df752
Codechange: rename str_validate to StrMakeValid(InPlace) ( #9304 )
...
This to be more explicit the function changes the value, and not
returns yes/no.
2021-05-29 11:21:38 +02:00
Loïc Guilloux
356bbbb90a
Fix: [MinGW] Set minimum OS version to Windows XP ( #9135 )
2021-04-29 14:26:08 +02:00
Rubidium
e5fedcd6da
Fix #6322 : [Script] Try to let the script die when no memory can be allocated instead of crashing the whole game
2021-04-17 22:24:52 +02:00
Rasmus Jonsson
0b2dd2c5cd
Fix: [NoAI] don't notify caught exceptions
2020-12-02 17:11:36 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
glx
aac4255d43
Fix #7590 : decrement allocated_size in ScriptAllocator::Free()
2019-05-15 21:59:57 +02:00
Niels Martin Hansen
140a96b3a0
Change: Limit memory allocations for each Squirrel instance
...
This can avoid out-of-memory situations due to single scripts using up the entire address space.
Instead, scripts that go above the maximum are killed.
The maximum is default 1 GB per script, but can be configured by a setting.
2019-05-11 15:34:33 +02:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Niels Martin Hansen
12ba56c5a3
Fix 6accbf9: Silence warnings about unused fread() result
2019-01-05 17:16:53 +01:00