Commit graph

250 commits

Author SHA1 Message Date
Areloch
dbf60a95a2 Adds handling to winVolume's _BuildFileName so if it's a filename-less filename(has only extension but no name) then we process the filename string correctly
Adds logic so when trying to do a path copy, if it's not a valid source filename, we merely fail the copy, rather than crashing due to a nullref
Makes guiPopUpCtrlEx respect the mActive flag so the mouse cannot interact with it if it's inactive
2022-07-24 13:12:46 -05:00
Robert MacGregor
161ffc62fe Merge branch 'Preview4_0' into feature-vfs-security 2022-06-13 08:05:26 -04:00
Robert MacGregor
4ef3f89280 * BugFix: Correct a minor post-merge typo. 2022-06-09 23:10:13 -04:00
Robert MacGregor
1e9aa8b86f Merge branch 'Preview4_0' into str_cpp_memory_experiment 2022-06-09 22:49:43 -04:00
Robert MacGregor
704113577b * Cleanup: Remove leftover comments from str.cpp. 2022-06-09 19:30:25 -04:00
Robert MacGregor
6d0e81763b * BugFix: Correct not setting the string to interned when allocating a StringData with a DataChunker in str.cpp. 2022-06-09 19:26:39 -04:00
Robert MacGregor
2cdfe70e50 * Experiment: Change the way StringData is allocated in the code, experimentally. 2022-06-08 11:27:16 -04:00
Jeff Hutchinson
3988e7baee Better allocator for TorqueScript temp conversions used during interpretation
instead of using a Vector<> that never frees and grows for torquescript temporaries created when doing type conversions)
2022-05-21 21:55:44 -04:00
JeffR
b36776d567 Tweaks handling of "invisible" files, files which start with a ., effectively making them have no filename and only an extension.
This allows the engine to actually process and work with such files.
2022-03-15 21:17:37 -05:00
Robert MacGregor
0e93373824 * BugFix: When querying against root with Torque::FS::DumpDirectories, correctly return directories with their path.
* Adjustment: Add commenting to some of the new programming.
* Adjustment: Tweak fileCreatedTime and fileModifiedTime functions to use the VFS.
2021-12-20 19:26:32 -05:00
Robert MacGregor
b63122ea76 * BugFix: Corrections to the VFS dumpDirectories function to properly honor the depth parameter. 2021-12-19 01:51:19 -05:00
Robert MacGregor
46b8c3d15d * BugFix: Correct the VFS dumpDirectories function not honoring noBasePath properly. 2021-12-19 01:18:52 -05:00
Robert MacGregor
cbe7ee13d6 * Adjustment: Change several filesystem functions to use the VFS.
* Feature: Initial implementation of a VFS dump directories function.
2021-12-18 23:37:49 -05:00
Robert MacGregor
948bc43d85 * Feature: Augment VFS file information with creation times & update some console functions to use VFS. 2021-12-18 03:56:11 -05:00
Robert MacGregor
277cdf67b0 * Feature: Initial secure VFS implementation with asset import capability. 2021-12-17 21:16:42 -05:00
Robert MacGregor
a6a7d6e1a1 * [Tokenizer] BugFix: Correct a malloc/delete mismatch in the tokenizer programming. 2021-11-06 20:34:12 -04:00
Robert MacGregor
2586e73145 * BugFix: Correct a few memory leaks. 2021-10-14 19:40:16 -04:00
Robert MacGregor
c376bc3f9c * [ZIP] BugFix: Correct another codepath that may fail due to case sensitive string searches. 2021-10-11 19:31:37 -04:00
Robert MacGregor
8d0128698a * [ZIPVolume] BugFix: Add the capability of resolving ZIP prefix paths with case insensitivity and a CMake option to control this behavior. 2021-10-11 19:02:58 -04:00
Robert MacGregor
15b946fb35 * Adjustment: Utilize native compiler intrinsics for endian swapping when available. 2021-10-07 09:59:03 -04:00
Robert MacGregor
1b6b803a20 * BugFix: Clear a lot of warnings and correct a few actual programming errors along the way. 2021-10-04 20:04:21 -04:00
Jeff Hutchinson
c16b88d709 Fix temporary buffer for scripting conversions. 2021-09-04 21:25:11 -04:00
Jeff Hutchinson
b0549118b6 various misc fixes from merge. 2021-09-01 22:36:59 -04:00
Jeff Hutchinson
17231ca9fb Merge remote-tracking branch 'devhead/Preview4_0' into tsneo
# Conflicts:
#	Engine/source/platform/types.visualc.h
#	Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript
#	Templates/BaseGame/game/tools/assetBrowser/scripts/assetTypes/terrain.tscript
#	Templates/BaseGame/game/tools/gui/editorSettingsWindow.ed.tscript
#	Templates/BaseGame/game/tools/gui/scriptEditorDlg.ed.gui
2021-09-01 22:26:23 -04:00
Robert MacGregor
1b55dce613 * Workaround: Implement noinline attributes for problematic functions in str.cpp due to what appears to be GCC compiler bugs. 2021-09-01 21:12:12 -04:00
Jeff Hutchinson
6e072dbf91 Merge branch 'Preview4_0_DevHead' into tsneo 2021-08-29 22:28:42 -04:00
Robert MacGregor
3ecdf292d7 * Adjustment: Remove some unnecessary ifdef logic in UUID headers. 2021-08-20 22:53:45 -04:00
Robert MacGregor
eca3fbfa67 * [UUID] BugFix: Correct a memory mismanagement error in UUID programming due to the way xuuid_t is utilized. 2021-08-14 17:44:17 -04:00
Jeff Hutchinson
717c7acca9 Merge remote-tracking branch 'devhead/Preview4_0' into tsneo
# Conflicts:
#	Templates/BaseGame/game/data/ui/guis/loadingGui.gui
#	Templates/BaseGame/game/data/ui/guis/mainMenu.gui
#	Templates/BaseGame/game/tools/MainEditor/guis/MainEditorWindow.gui
#	Templates/BaseGame/game/tools/assetBrowser/guis/assetPreviewButtonsTemplate.gui
#	Templates/BaseGame/game/tools/forestEditor/brushes.tscript
2021-08-13 20:14:39 -04:00
AzaezelX
59e162abe5 void floating point error clipping courtessy higuy and hutch 2021-07-31 17:05:29 -05:00
Areloch
abf5a09bc3 Removed duplicate checkbox image
Added asset import conflict resolution option to prepend folder name
Cleanups of Project Importer and fixed importing of material and terrain materials, specifically, fallbacks in the event they are unnamed to utilize the mapTo and internalName fields, respectively
Fixed typos in guiTerrainMaterialDlg
Added AssetBrowser button to GuiEditor
Improved FileObject's PeekLine function to be able to peek forward further via an optional lineOffset argument
2021-07-28 09:26:13 -05:00
AzaezelX
b8eaefc21e refactor new IsScriptFile method to be zip-safe 2021-07-22 20:55:46 -05:00
Areloch
83b0432283
Merge pull request #489 from Azaezel/alpha40/zipPassPunt
expose a zip file password cmake config option
2021-07-17 11:03:26 -05:00
Areloch
4d40e3cab5
Merge pull request #449 from OTHGMars/Zip_Test2
Loading from zipped game directories.
2021-07-17 11:03:19 -05:00
Brian Roberts
3aa0b8d236
Merge pull request #491 from Azaezel/alpha40/StreamSafetyString
augment bitstream write error reporting
2021-06-22 12:04:31 -05:00
Jeff Hutchinson
acde0c3f0b Merge branch 'Preview4_0_DevHead' into tsneo
# Conflicts:
#	Engine/source/console/consoleInternal.cpp
2021-06-18 21:13:49 -04:00
Jeff Hutchinson
2e8a0185b3 Fix buffer overflow issue in StringUnit::getWords.
getWords("a b c d", 2); // "c d"

that turns into this inside the engine:

getWords("a b c d", 2, 1000000);

that code after parsing d goes string++ which passes over the null character. This now enforces that check. Found this with the new script interpreter...how this wasn't blowing up before is beyond me.
2021-06-18 21:08:03 -04:00
AzaezelX
1da711dc4f augment bitstream write error reporting 2021-06-07 15:07:54 -05:00
AzaezelX
a34aea55f7 expose a zip file password cmake config option 2021-06-02 16:08:51 -05:00
Jeff Hutchinson
e981fd2cc3 Add support for aarch64 / apple silicon 2021-05-10 15:55:56 -04:00
Jeff Hutchinson
69d7a2f4a1 Merge remote-tracking branch 'devhead/Preview4_0' into tsneo
# Conflicts:
#	Engine/source/console/test/ScriptTest.cpp
#	Engine/source/console/test/consoleTest.cpp
2021-05-06 21:08:53 -04:00
AzaezelX
2e3e4228b2 make string to char* conversion automatic 2021-04-21 14:45:10 -05:00
Jeff Hutchinson
3e04196a53 make tests pass. 2021-04-03 01:53:40 -04:00
Jeff Hutchinson
35500a87c6 initial port of the new interpreter 2021-03-30 19:33:19 -04:00
Lukas Aldershaab
099dd4f1f3 Parametrize script extension, default to 'tscript' 2021-01-19 21:32:31 +01:00
OTHGMars
c77be80220 Zip usage notes and defines. 2021-01-11 05:04:36 -05:00
OTHGMars
0484956a1f Enables pattern searches to enter zipped sub-directories. 2021-01-11 04:53:38 -05:00
OTHGMars
e808fc4407 Clone file handle for concurrent zip access. 2021-01-11 04:49:43 -05:00
Lukas Joergensen
a241d27b58 Expand EngineAPI type definitions 2020-11-15 21:30:45 +01:00
Lukas Aldershaab
c999baf7ed Moves from using dStrCmp to the new String::compare static functions. Keeps things cleaner, consistent, and works with intellisense. 2020-10-03 14:37:55 +02:00