Commit Graph

36460 Commits

Author SHA1 Message Date
Max Hilbrunner
a5c179e4f8 FileAccessWindows: Cosmetic improvements 2021-08-09 14:43:09 +02:00
Max Hilbrunner
b48cbb5da9 Fix Windows platform file access
This restores Windows platform file handling back to open files non-exlusively by default, as was the case before October 2018. (See b902a2f2a7)
Back then, while fixing warnings for MSVC, the function used for opening files was changed from _wfopen() to _wfopen_s() as suggsted by the warning C4996. ("This function may be unsafe, consider using _wfopen_s instead.")

This new function
1. did parameter validation and thus avoided some possible security issues due to nil pointers or wrongly terminated strings
2. it also changed the default file sharing for opened files from _SH_DENYNO (which was the implicit default for the previous _wfopen()) to _SH_SECURE.

_SH_DENYNO means every opened file could be opened by other calls (like is the default on other operating systems).
_SH_SECURE means if the file is opened with READ access, others can still read the same file, but if it is opened with WRITE access, others can't open it at all, not even to read.

This led to rarely occuring bugs on Windows, i.e. due to random access by Antivirus processes, or Godot/Windows not closing a file handle fast enough while trying to open it again elsewhere (i.e. project.godot, instead showing the Project manager, or saving shaders/debugging the game).

What this PR does it change the file access to a third method, _wfsopen(). This is still secure, doing parameter validation and thus avoids the warning, but it allows us to actually SET the file sharing parameter. And we set it to _SH_DENYNO, as it was implicitely before the change. (And as it currently is on all non-Windows platforms, where file sharing restrictions don't exist by default.)

Warning C4996 should really have been pointing this out. It should've been _wfsopen() all along. Let's hope this banishes those annoying, rare errors for all eternity.

Fixes #28036.
2021-08-09 14:41:38 +02:00
Rémi Verschelde
49309ac5fb
Merge pull request #51375 from Blackiris/fix-action-get-events
Fix action_get_events returning booleans instead of InputKey entries
2021-08-07 23:27:09 +02:00
Julien Nguyen
daee3c316f Fix action_get_events returning booleans instead of InputKey entries 2021-08-07 21:17:55 +02:00
Yuri Roubinsky
f860ee3091
Merge pull request #51356 from Chaosus/shader_dialog 2021-08-07 21:49:23 +03:00
Yuri Roubinsky
5e5cd2495d Added editor dialog for easily creating shaders. 2021-08-07 21:02:13 +03:00
Rémi Verschelde
4c2559df1d
Merge pull request #38547 from YeldhamDev/global_rate_scale_invert
Invert how `global_rate_scale` value works, and rename it to `playback_speed_scale`
2021-08-07 18:39:27 +02:00
Michael Alexsander
4bef900399 Invert how global_rate_scale value works, and rename it to playback_speed_scale 2021-08-07 12:32:42 -03:00
Rémi Verschelde
3177da1d05
Merge pull request #51360 from Paulb23/item-list-bg-colour-update 2021-08-07 14:14:08 +02:00
Rémi Verschelde
a888f1492b
Merge pull request #51355 from lawnjelly/fix_plane_xform_4_new 2021-08-07 14:13:56 +02:00
Rémi Verschelde
d6329c5f08
Merge pull request #51357 from raulsntos/fix-51342
Fix Path3D initial forward calculation
2021-08-07 13:30:19 +02:00
Paulb23
738b0fdae5 Redraw on item list custom bg/fg colour change 2021-08-07 12:08:46 +01:00
Rémi Verschelde
a7f96e07d0
Merge pull request #51326 from LightningAA/minor_view_rotation_gizmo_improvements-4.0
Minor visual improvements to the viewport rotation gizmo (again)
2021-08-07 12:41:25 +02:00
Raul Santos
18f7acf611 Fix Path3D initial forward calculation 2021-08-07 12:39:34 +02:00
Rémi Verschelde
cd68ef9ed0
Merge pull request #51328 from pycbouh/docs-inspector-plugins-classref
Improve the inspector plugin documentation and remove a confusing statement
2021-08-07 12:36:51 +02:00
Rémi Verschelde
35b08b7cbc
Merge pull request #51322 from raulsntos/fix-msbuild-exception
Ensure MSBuildPanel buttons are instantiated
2021-08-07 12:19:26 +02:00
lawnjelly
dd0f54a368 Fix Transform::xform(Plane) functions
The Transform::xform and xform_inv are made safe for Planes when using non-uniform scaling.
Optimization of calling sites to prevent loss of performance from the changes to xform(Plane).
2021-08-07 11:10:50 +01:00
Rémi Verschelde
3c85ef14c3
Merge pull request #51353 from AndreaCatania/const_fix
Removes const from set functions on the Gizmos
2021-08-07 10:31:08 +02:00
AndreaCatania
e4e4a02d3d Removes const from set functions on the Gizmos 2021-08-07 09:15:57 +02:00
Rémi Verschelde
9cb4fbe9d5
Merge pull request #47700 from Calinou/editor-mouse-wheel-change-scene-tabs
Allow using the mouse wheel to navigate scene tabs
2021-08-07 08:21:43 +02:00
Rémi Verschelde
4cb406e02a
Merge pull request #51332 from Razoric480/fix-completion-sceneless
Fix LSP completion crashing on scene-less scripts
2021-08-07 00:01:47 +02:00
Rémi Verschelde
1899dc9961
Merge pull request #51337 from naithar/fix/ios-plugin-initialization-in-api
[4.0] [iOS] Use platform generated api to initialize iOS plugins
2021-08-06 23:58:14 +02:00
Lightning_A
e1ad11f453 Minor visual improvements to the viewport rotation gizmo (again) 2021-08-06 14:39:13 -06:00
Raul Santos
f20db58271 Ensure MSBuildPanel buttons are instantiated 2021-08-06 22:30:38 +02:00
Sergey Minakov
ae91e372d1 [iOS] Use platform generated api to initialize iOS plugins 2021-08-06 23:28:37 +03:00
Francois Belair
070d634966 Fix LSP completion crashing on scene-less scripts 2021-08-06 14:55:05 -04:00
Rémi Verschelde
18c5d862e4
Merge pull request #51319 from pycbouh/editor-fix-theme-item-descriptions
Fix theme property descriptions in the Inspector
2021-08-06 20:23:41 +02:00
Yuri Sizov
ecf42e2235 Improve the inspector plugin documentation and remove a confusing statement 2021-08-06 21:01:00 +03:00
Rémi Verschelde
da339f8ffc
Merge pull request #51309 from Chaosus/fix_uniform_error_spam
Fix incorrect checking of uniform set to prevent error spam
2021-08-06 17:15:03 +02:00
Rémi Verschelde
ed15d2c413
Merge pull request #49924 from BastiaanOlij/mobile_render_subpass
Use subpasses to do 3D rendering and resolve in mobile renderer
2021-08-06 17:00:00 +02:00
Yuri Sizov
45af2af214 Fix theme property descriptions in the Inspector 2021-08-06 17:12:43 +03:00
Rémi Verschelde
2fedd10dd0
Merge pull request #51314 from georgwacker/fix-vertical-precision-scroll
Fix vertical scroll/zoom for precision touchpad on windows
2021-08-06 15:55:08 +02:00
Bastiaan Olij
b920bf05a4 Use subpasses to do 3D rendering and resolve in mobile renderer 2021-08-06 23:43:26 +10:00
Georg Wacker
63ba15a518 Fix vertical scroll/zoom for precision touchpad
Adds factor data for vertical mousewheel event, in line with horizontal mousewheel event
2021-08-06 15:06:11 +02:00
Rémi Verschelde
b3c2281706
Merge pull request #50487 from akien-mga/clang-warning-Wordered-compare-function-pointers 2021-08-06 12:55:40 +02:00
Rémi Verschelde
c44ebb020d
HTML5: Fix warnings and re-enable werror=yes on CI
Add a missing call to disable warnings on a forked env for freetype's
`sfnt.c`.
2021-08-06 12:12:37 +02:00
Rémi Verschelde
34421683eb
SCons: Add method to detect Emscripten and use it for warnings config
Emscripten is LLVM-based so we want to follow the same logic. But we can't just
put it as a match in `methods.using_clang()` as that would mess with the
compiler version detection logic used to restrict old GCC and Clang releases.
2021-08-06 12:12:37 +02:00
Rémi Verschelde
802810c371
SCons: Disable Clang -Wordered-compare-function-pointers warning
It's raised for us on many comparators implemented to be able to store a struct
in `Set` or `Map` (who rely on `operator<` internally). In the cases I reviewed
we don't actually care about the ordering and we use the struct's function
pointers as that's the only distinctive data available.
2021-08-06 12:12:33 +02:00
Rémi Verschelde
9f4e9ad75c
Merge pull request #46505 from akien-mga/os-fix-used-resources-debug-prints
OS: Fix used resource debug prints
2021-08-06 12:12:13 +02:00
Rémi Verschelde
d4e7a1af44
Merge pull request #51082 from ellenhp/fix_cubic_resampling 2021-08-06 11:27:13 +02:00
Yuri Roubinsky
ac4406cfbe Fix incorrect checking of uniform set to prevent error spam 2021-08-06 12:20:12 +03:00
Rémi Verschelde
8c3a6b10a9
OS: Fix used resource debug prints
These methods were broken by 22419082d9
5 years ago and nobody complained, so maybe they're not so useful...
But at least this should restore them to a working state.
2021-08-06 11:03:26 +02:00
Rémi Verschelde
18fb2afcac
Merge pull request #51214 from Calinou/update-spinner-highlight-when-continuous
Change the editor update spinner color when updating continuously
2021-08-06 10:17:29 +02:00
Rémi Verschelde
faad8833fe
Merge pull request #51234 from akien-mga/tests-file-get_csv_line
Tests: Improve coverage for `File::get_csv_line()`
2021-08-06 10:17:12 +02:00
Rémi Verschelde
6ded4f52e8
Merge pull request #51283 from Razoric480/lsp-parse-from
Fix LSP parsing get_node only from the scene root
2021-08-06 10:13:09 +02:00
Rémi Verschelde
2f1bc509dc
Merge pull request #51301 from Faless/mp/4.x_gd_default_rpc
[Net] Default @rpc annotation should be puppet, not master.
2021-08-06 09:08:09 +02:00
Rémi Verschelde
ba0982c51c
Merge pull request #51008 from raulsntos/csharp-renames 2021-08-06 09:07:02 +02:00
Rémi Verschelde
4953192172
Merge pull request #51300 from Faless/enet/4.x_fix_status_connect
[Net] Fix ENetMultiplayerPeer status during connection.
2021-08-06 09:06:00 +02:00
Rémi Verschelde
9c84233bfb
Merge pull request #51290 from V-Sekai/less-reset-spam
Animation RESET spam less patch 2
2021-08-06 08:50:36 +02:00
Yuri Roubinsky
7997a188ca
Merge pull request #51297 from aaronfranke/shader-param-cache
Preserve original name in shader params cache
2021-08-06 09:34:41 +03:00