aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Add setting to hide mature content from ContentDBrubenwardy2019-02-03
|
* Fix core.download_file() creating empty files on HTTP errorrubenwardy2019-02-03
|
* DragonFly BSD is somewhat identical to FreeBSD (#8159)Leonid Bobrov2019-02-03
|
* Force player save before kicking on player shutdown (#8157)Loïc Blot2019-02-03
|
* Move missing translations warnings to verbosestream (#8156)Nathanaël Courant2019-02-02
| | | They should not spam the console and logs.
* Settings: Slightly increase block generate, block send, object send ↵Paramat2019-01-31
| | | | distances (#8147)
* Content store: Fix storage leak by storing screenshots in cache (#8137)rubenwardy2019-01-31
|
* Add setting to disable confirmation on new player registration (#8102)Muhammad Rifqi Priyo Susanto2019-01-26
|
* Fix pkgmgr game install with RUN_IN_PLACE=0 (#8113)Paul Ouellette2019-01-26
|
* blitToVManip: Check out-of-bounds using node position not index (#8127)Paramat2019-01-25
| | | | | | | | | | | | | | Previously, when using 'place on vmanip' to add a schematic to a lua voxelmanip, if part of the schematic was outside the voxelmanip volume, the outside part would often appear in a strange place elsewhere inside the voxelmanip instead of being trimmed off. This was due to the out-of-bounds check checking the index. A position outside the voxelmanip can have an index that satisfies '0 <= index <= voxelmanip volume', causing the node to be placed at a strange position inside the voxelmanip. Use 'vm->m_area.contains(pos)' instead. Move index calculation to later in the code to optimise.
* Fix warnings about dungeongen.cpp memcpy() and unused variable in ↵Paramat2019-01-22
| | | | | | | | | | MapBlock::deSerializeNetworkSpecific() (#8122) * Fix warning about dungeongen.cpp memcpy() * Fix unused variable in MapBlock::deSerializeNetworkSpecific() * Fix unused variable a simpler way
* Fix randomly rejected form field submits (#8091)Jozef Behran2019-01-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a formspec is submitted from a form fields handling callback of another form (or "formspec shown from another formspec"), the fields submitted for it can get rejected by the form exploit mitigation subsystem with a message like "'zorman2000' submitted formspec ('formspec_error:form2') but server hasn't sent formspec to client, possible exploitation attempt" being sent to logs. This was already reported as #7374 and a change was made that fixed the simple testcase included with that bug report but the bug still kept lurking around and popping out in more complicated scenarios like the advtrains TSS route programming UI. Deep investigation of the problem revealed that this sequence of events is entirely possible and leads to the bug: 1. Server: show form1 2. Client *shows form1* 3. Client: submits form1 4. Server: show form2 5. Client: says form1 closed 6. Client *shows form2* 7. Client: submits form2 What happens inside the code is that when the server in step 4 sends form2, the registry of opened forms is updated to reflect the fact that form2 is now the valid form for the client to submit. Then when in step 5 client says "form1 was closed", the exploit mitigation subsystem code deletes the registry entry for the client without bothering to check whether the form client says was closed just now is indeed the form that is recorded in that entry as the valid form. Then later, in step 7 the client tries to submit its valid form fields, these will be rejected because the entry is missing. It turns out the procedure where the broken code resides already gets the form name so a simple "if" around the offending piece of code fixes the whole thing. And advtrains TSS agrees with that.
* Advanced settings noiseparams: Remove '}' left in .confSmallJoker2019-01-19
| | | | | Previously, when editing noiseparams then restoring them to the default, the final '}' was not removed from minetest.conf.
* Optimize subgames search a little bit (#8096)Jozef Behran2019-01-18
| | | | | Reserve space for the list of games in findWorldSubgame. The performance gain is pretty much negligible but this change also gets rid of a performance warning by CLANG TIDY.
* Fix some misspellings (#8104)Paul Ouellette2019-01-16
|
* world.mt: Only accept true/false/nil values (#8055)SmallJoker2019-01-13
| | | | | This patch will make distinguishable mods in modpacks possible in the future `nil` checks are required to provide backwards-compatibility for fresh configured worlds
* Speed up the craft definition handling (#8097)Jozef Behran2019-01-13
| | | | | | | | | | | The craft definition handling code that collects the names of the craftable nodes suffers from vector reallocation performance hits, slowing down instances with lots of crafting recipes (VanessaE's DreamBuilder and most public server some to my mind when thinking about this). As in each instance the size of the resulting vector is already known, add a reserve() call before the offending loops to allocate the needed chunk of memory within the result vector in one go, getting rid of the overhead.
* Optimize path finalization in pathfinder (#8100)Jozef Behran2019-01-12
| | | | | | | The pathfinder needs quite a bunch of items to add to the resulting list. It turns out the amount of the space needed for the finalized path is known in advance so preallocate it to avoid a burst of reallocation calls each time something needs to look for a path.
* Make sqlite3 the default auth backend (#8085)Paul Ouellette2019-01-10
|
* Import strstr function from FreeBSD 11 libcLoic Blot2019-01-10
|
* Android build fixesLoïc Blot2019-01-09
| | | | This fixes #8079
* Fix a crash on Android with Align2Npot2 (#8070)Loïc Blot2019-01-07
| | | | | | | | * Fix a crash on Android with Align2Npot2 glGetString can be NULL. If stored in a string it triggers a SIGSEGV. Instead do a basic strstr and verify the pointer * Better Align2Npot2 check (+ performance)
* Fix wrong code comment (#8061)DS2019-01-06
| | | "Get core.registered_on_chat_messages" to "Get core.registered_on_player_receive_fields" where `core.registered_on_player_receive_fields` is gotten
* Fix various bugs (Anticheat, Lua helpers) (#8013)SmallJoker2019-01-06
| | | | | | | | | | | * Fix various bugs (Anticheat, Lua helpers) Anticheat: Use camera position instead of player position for shoot line calculations Lua helpers: Increase 'i' to not overwrite earlier added table values * Remove lag compensation * * 1.5 for larger selection boxes
* Deprecate modpack.txt and use modpack.conf instead (#7892)rubenwardy2019-01-06
| | | | * Deprecate modpack.txt and use modpack.conf instead
* Drop libgmp on Android and use mini-gmp (#8047)Loïc Blot2019-01-04
|
* Make sqlite3 default auth & player backends for new worlds (#8043)Loïc Blot2019-01-04
| | | | | | * Make sqlite3 default auth & player backends for new worlds Also notify about auth backend depreciation
* Fix on_successful_save -> onSuccessfulSaveLoïc Blot2019-01-04
|
* Fix various player save issues (performance penalty on sql backends + bugs)Loïc Blot2019-01-04
| | | | | | | * PostgreSQL & SQLite3 doesn't setModified(false) on RemotePlayer, then player is saved on each server save call. This results in heavy useless writes. * PostgreSQL & SQLite3 ack engine meta write whereas db commit hasn't been performed. If commit failed write has failed. We mustn't notify engine write is done. * serializing player meta must not setModified(false) because it didn't ensure write has been done * add RemotePlayer::on_successfull_save callback to do the flag update on a successful save
* Player file directory must be only created when using file backend.Loïc Blot2019-01-04
| | | | Also ensure on each player save that the directory exists
* Remove remote media compatibility mode. (#8044)sofar2019-01-04
| | | | | | | | The fallback code shouldn't be needed and is a remnant of the GET method that old media servers use. Clients using it are likely to just waste bandwidth and having to download the media again through the normal transfer from server method. The most reliable method is to get all missing textures therefore from the server directly and not spam the remote media server with 404s.
* Proselytize the network. Use IEEE F32 (#8030)SmallJoker2019-01-03
| | | | | * Proselytize the network. Use IEEE F32 * Remove unused V2F1000 functions
* CSM restrictions: Make 'LOAD_CLIENT_MODS' disable loading of 'builtin' (#8000)Paramat2019-01-03
| | | | | | | | | | | | Previously, when the CSM restriction 'LOAD_CLIENT_MODS' was used a client was still able to add CSM code to 'builtin' to bypass that restriction, because 'builtin' is not yet verified. Until server-sent CSM and verifying of 'builtin' are complete, make 'LOAD_CLIENT_MODS' disable the loading of builtin. Clarify code comments and messages to distinguish between client-side modding and client-side scripting. 'Scripting' includes 'builtin', 'modding' does not.
* Add minetest.load_area (#8023)HybridDog2018-12-31
|
* Extend pitch fly mode to swimming (#7943)random-geek2018-12-31
|
* CSM: add requested CSM_RF_READ_PLAYERINFO (#8007)Loïc Blot2018-12-24
| | | | | | | | * CSM: add requested CSM_RF_READ_PLAYERINFO This new CSM limit permit to limit PLAYERINFO read from server. It affects get_player_names call
* Fix entity rotation in existing worlds (#7989)SmallJoker2018-12-23
|
* mapnode: add const/noexcept (#8009)Vitaliy2018-12-22
|
* Android: Fix memory leak when displaying images in the mainmenu (#8011)rubenwardy2018-12-22
|
* reportMetadataChange; Silence clang warningsSmallJoker2018-12-21
|
* Fix more transparency issues with ogles2 driver (#8005)stujones112018-12-20
|
* Android: Move touchscreen rare controls inline with settings icon (#8006)stujones112018-12-20
|
* Add command line option to load password from file (#7832)Kevin Abrams2018-12-18
|
* ieee_float: Silence compiler warningSmallJoker2018-12-18
| | | | Trivial issue reported by @pgimeno
* Fix the part of the float test that requires IEC559/IEEE754 compliancePedro Gimeno2018-12-18
| | | | GCC and CLang compilers fail to support full IEC559 compliance required for the test, when certain compiler flags are active. This patch implements a heuristic that checks for the most common flag in GCC and CLang, plues an extra check which GCC disables when it's not compliant, to hopefully catch most cases where it can't run.
* Fix C++11 violation that broke clang on Debian StretchPedro Gimeno2018-12-16
|
* Add an activeobject manager to hold active objects (#7939)Loïc Blot2018-12-13
| | | | * Add an activeobject manager to hold active objects * Add unittests
* Network: Send IEEE floats (#7768)SmallJoker2018-12-13
|
* Make showOverlayMessage strings translatable (#7964)Wuzzy2018-12-13
|
* Make MapNode handle paramtype2≠leveled properly (#7958)Vitaliy2018-12-12
|