summaryrefslogtreecommitdiffstats
path: root/core/message_queue.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-374/+0
| | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* Fix Container sorting not working when overriding _sort_children in gdscriptPouleyKetchoupp2020-05-161-0/+15
| | | | | | | | | | | | | | | Remove _sort_children from script bindings: _sort_children is an internal method which shouldn't be exposed to scripts. Added support for non-bound methods in MessageQueue: So we can use deferred calls without exposing internal methods to scripts. Added debug checks in CallableCustomMethodPointer: Adding method pointer callables to the message queue was causing crashes in case an object was destroyed and the same memory was allocated for another one. The new object had a valid object id but the call was erroneous. Release will be fixed later, along with Variant which has the same problem and is also fixed for debug only.
* Style: Enforce braces around if blocks and loopsRémi Verschelde2020-05-141-10/+20
| | | | | Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
* Style: Enforce separation line between function definitionsRémi Verschelde2020-05-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-29/+0
| | | | | | | | | | | | | | Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
* Port member initialization from constructor to declaration (C++11)Rémi Verschelde2020-05-141-3/+0
| | | | | | | | | | Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
* Replace NULL with nullptrlupoDharkael2020-04-021-6/+6
|
* Tweak the message queue maximum size property hintHugo Locurcio2020-03-241-2/+2
| | | | | | | | | | The minimum slider value no longer allows decreasing the value below the default, as this can cause things to break in the editor. The maximum slider value was also increased to 4096 since it can safely be increased to that value (some add-ons may require it). This closes #37052.
* Fixes bugs found by Sonarcloud and Coverityqarmin2020-03-021-1/+4
|
* Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky2020-02-201-51/+54
| | | | objects and made them default.
* Remove duplicate ERR_PRINT macro.Marcel Admiraal2020-02-051-1/+1
|
* MessageQueue: Fix setting name in OOM error messageRémi Verschelde2020-01-281-3/+3
| | | | Cf. #35653.
* Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
| | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* Removed unused variables, add some constants numbersRafał Mikrut2019-12-101-3/+0
|
* Added some obvious errors explanationsqarmin2019-09-251-1/+1
|
* Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'Braden Bodily2019-08-171-7/+4
| | | | | | | | | Condensed some if and ERR statements. Added dots to end of error messages Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?), core/os/memory.cpp, drivers/png/png_driver_common.cpp, drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
* MessageQueue::flush now always destroys parameters of a spent messageIbrahn Sahir2019-05-191-5/+7
| | | | | Previously, destructors of Variant parameters were not called if the target of the message was not found.
* Change "ID" to lowercase "id"Aaron Franke2019-05-091-5/+5
| | | | Reasoning: ID is not an acronym, it is simply short for identification, so it logically should not be capitalized. But even if it was an acronym, other acronyms in Godot are not capitalized, like p_rid, p_ip, and p_json.
* Do not use the workaround for desktop nvidia on mobile and html5.Juan Linietsky2019-01-141-1/+1
|
* Do not allow flushing while already flushing the message queue. Added to ↵Juan Linietsky2019-01-141-0/+1
| | | | help track bugs in ProgressDialog in editor.
* Do not allow adding tasks while in the middle of flushing a message queueJuan Linietsky2019-01-141-0/+9
|
* Update copyright statements to 2019Rémi Verschelde2019-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Make thumbnail cache less tasking on the message queueBojidar Marinov2018-12-061-1/+1
| | | | Fixes #23567
* Add some limits on the Editor SettingsSuperwaitsum2018-10-241-0/+1
|
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-121-2/+2
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Make some debug prints verbose-only, remove othersRémi Verschelde2018-08-241-12/+7
|
* -Project/Editor settings now use new inspectorJuan Linietsky2018-07-191-1/+1
| | | | | | | -Project/Editor settings now show tooltips properly -Settings thar require restart now will show a restart warning -Video driver is now visible all the time, can be changed easily -Added function to request current video driver
* Fix typos with codespellluz.paz2018-02-211-1/+1
| | | | | | | | | | | | | | Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt` Whitelist consists of: ``` ang doubleclick lod nd que te unselect ```
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-051-0/+1
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Dead code tells no talesRémi Verschelde2017-08-271-41/+0
|
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-271-1/+1
|
* Makes all Godot API's methods Lower CaseIndah Sylvia2017-08-071-3/+3
|
* -Renamed GlobalConfig to ProjectSettings, makes more sense.Juan Linietsky2017-07-191-1/+1
| | | | -Added system for feature overrides, it's pretty cool :)
* -Reorganized all properties of project settings (Sorry, Again).Juan Linietsky2017-07-171-1/+1
| | | | | (Lot's of bloat accumulated, so it was time for clean up.) -Made EditorSettings and ProjectSettings search more useful (search in sections too)
* Make MessageQueue::flush() reentrantPedro J. Estébanez2017-05-181-6/+9
|
* Better explain out of memory error in message queueFabio Alessandrelli2017-05-051-4/+6
| | | | Also effectively saves one unnecessary call when everything is fine.
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-081-0/+1
|
* A Whole New World (clang-format edition)Rémi Verschelde2017-03-051-143/+118
| | | | | | | | | | | | | | | | | | | | | | | | I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
* -renamed globals.h to global_config.cpp (this seems to have caused a few ↵Juan Linietsky2017-02-211-1/+1
| | | | | | modified files) -.pck and .zip exporting redone, seems to be working..
* Style: Cleanups, added headers, renamed filesRémi Verschelde2017-01-161-0/+2
| | | | | | | | | Made sure files in core/ and tools/ have a proper Godot license header when written by us. Also renamed aabb.{cpp,h} and object_type_db.{cpp,h} to rect3.{cpp,h} and class_db.{cpp,h} respectively. Also added a proper header to core/io/base64.{c,h} after clarifying the licensing with the original author (public domain).
* -Changed most project settings in the engine, so they have major and minor ↵Juan Linietsky2017-01-051-1/+1
| | | | | | | | categories. -Changed SectionedPropertyEditor to support this -Renamed Globals singleton to GlobalConfig, makes more sense. -Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
* ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to ↵Juan Linietsky2017-01-021-3/+3
| | | | | | | | Variant. All usages of "type" to refer to classes were renamed to "class" ClassDB has been exposed to GDScript. OBJ_TYPE() macro is now GDCLASS()
* Welcome in 2017, dear changelog reader!Rémi Verschelde2017-01-011-1/+1
| | | | | | | | That year should bring the long-awaited OpenGL ES 3.0 compatible renderer with state-of-the-art rendering techniques tuned to work as low as middle end handheld devices - without compromising with the possibilities given for higher end desktop games of course. Great times ahead for the Godot community and the gamers that will play our games!
* fix bug in reporting of message queue sizeJuan Linietsky2016-06-271-1/+1
|
* -make signals throw an error when target method is not found, fixes #2036Juan Linietsky2016-01-041-57/+47
| | | | | -removed 4 arguments limit for emit_signal() from script -remvoed 4 arguments limit for call_deferred() from script
* Update copyright to 2016 in headersGeorge Marques2016-01-011-1/+1
|
* -fixed many memory initialization issuesJuan Linietsky2015-06-061-6/+13
| | | | | -fixed deadlock on previews thread -fixed compilation errors on unix
* Updated copyright year in all headersJuan Linietsky2015-04-181-1/+1
|
* -Support for changing fontsJuan Linietsky2014-04-051-1/+2
| | | | | | | -Detect when free() might crash the project and throw error -fixed 2D Bounce in physics (3d still broken) -renamed “on_top” property to “behind_parent”, which makes more sense, old on_top remains there for compatibility but is invisible. -large amount of fixes