| Commit message (Collapse) | Author | Age |
|
|
|
| |
We try to use default fallback for both mono and main font when custom font path is not exist. This way, if Minetest is not corrupted, we could avoid crash.
|
|
|
|
|
|
|
|
|
|
|
| |
* Code modernization: src/p*, src/q*, src/r*, src/s* (partial)
* empty function
* default constructor/destructor
* for range-based loops
* use emplace_back instead of push_back
* C++ STL header style
* Spelling: vertice -> vertex
|
|
|
|
| |
* Migrate cpp headers to pragma once
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* [CSM] Add flavour limits controlled by server
Server send flavour limits to client permitting to disable or limit some Lua calls
* Add limits for reading nodedefs and itemdefs
* flavour: Add lookup node limits
* Merge get_node_or_nil into get_node.
Sending fake node doesn't make sense in CSM, just return nil if node is not available for any reason
* Add node range customization when noderange flavour is enabled (default 8 nodes)
* Limit nodes range & disable chat message sending by default
* Bump protocol version
|
|
|
|
|
|
| |
* Cpp11 initializers: last src root changeset
Finish to migrate all src root folder files to C++11 constructor initializers
|
|
|
|
| |
* Fix event LINT & remove default constructor/destructors
* remove compat code & modernize autolock header
|
| |
|
|
|
| |
* Also remove 1 non declared but defined functions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Some performance optimizations
This is globally removing some memory useless copy
* use a const ref return on std::string Settings::get to prevent data copy on getters which doesn't need to copy it
* pass some stack created strings to static const as they are not modified anywhere
* Camera: return nametags per const ref instead of a list pointer, we only need to read it
* INodeDefManager: getAll should be a result ref writer instead of a return copy
* INodeDefManager: getAlias should return a const std::string ref
* Minimap: unroll a Scolor creation in blitMinimapPixersToImageRadar to prvent many variable construct/destruct which are unneeded (we rewrite the content in the loop)
* CNodeDefManager::updateAliases: prevent a idef getall copy
* Profiler: constness
* rollback_interface: create real_name later, and use const ref
* MapBlockMesh updateFastFaceRow: unroll TileSpec next_tile, which has a cost of 1.8% CPU due to variable allocation/destruction,
* MapBlockMesh updateFastFaceRow: copy next_tile to tile only if it's a different tilespec
* MapBlockMesh updateFastFaceRow: use memcpy to copy next_lights to lights to do it in a single cpu operation
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is part 2 for 5f084cd98d7b3326b51320455364337539710efd
Other improvements:
* Use the defined ItemGroupList when used
* make Client::checkPrivilege const
* inline some trivial functions
* Add ActiveObjectMap typedef
* Add SettingsEntries typedef
|
|
|
|
|
|
| |
* This permit to improve performance on C++11 builds
* use some existing typedefs in tools maps
* minor code style changes
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Rename everything.
* Strip J prefix.
* Change UpperCamelCase functions to lowerCamelCase.
* Remove global (!) semaphore count mutex on OSX.
* Remove semaphore count getter (unused, unsafe, depended on internal
API functions on Windows, and used a hack on OSX).
* Add `Atomic<type>`.
* Make `Thread` handle thread names.
* Add support for C++11 multi-threading.
* Combine pthread and win32 sources.
* Remove `ThreadStarted` (unused, unneeded).
* Move some includes from the headers to the sources.
* Move all of `Event` into its header (allows inlining with no new includes).
* Make `Event` use `Semaphore` (except on Windows).
* Move some porting functions into `Thread`.
* Integrate logging with `Thread`.
* Add threading test.
|
|
|
|
| |
Spare some copies.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move debug streams to log.cpp|h
Move GUI-related globals to clientlauncher
Move g_settings and g_settings_path to settings.cpp|h
Move g_menuclouds to clouds.cpp|h
Move g_profiler to profiler.cpp|h
|
|
|
|
| |
This was a regression introduced by f6e4c5d9cf459e8278a76a2beaee59732e841458 .
|
|
|
|
| |
callback (8% perf improvement in game loop) Ensure variable is set Ensure settings callback is threadsafe
|
|
|
|
|
|
| |
(8% perf improvement in game loop)"
This reverts commit a555e2d9b0ccee452996381a44677b8bec210036.
|
|
|
|
|
|
| |
improvement in game loop)
Amend the settings callback to support userdata
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This greatly reduces the complexity of Settings code.
Additionally, several memory leaks were fixed.
|
|
|
|
|
|
|
|
| |
- Remove blank setting values when setting has a group
- Pair setting values with groups in file when possible
- Preserve user-set whitespace in setting objects
- Delete setting value when setting NoiseParams group
- Delete overwritten groups outside of lock
|
|
|
|
|
|
| |
Add format example to minetest.conf.example
Add Settings::setU16()
Throw exception on attempted access of NULL settings groups
|
| |
|
| |
|
| |
|
|
|
|
| |
This also cleans up settings a bit
|
| |
|
|
|
|
| |
Also check for (this == &other) before locking mutexes.
|
|
|
|
| |
Also removed 2 unused functions.
|
| |
|
| |
|
|
|
|
|
| |
Remove flagmask field from set_mapgen_params table
Add small bits of needed documentation
|
|
|
|
|
| |
Add checks for invalid user input for important settings
Rename Settings::tryGet* to Settings::get*NoEx for consistency
|
|
|
|
| |
This reverts commit 3f376a092e1c16429fb52f24736e9da98aff4cd5.
|
|
|
|
| |
Rename try* non exceptioning functions to *NoEx
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Previously, settings where only written when a value has changed, and
removal of a setting value didn't count as a change.
|