Mattes D
3722a239bf
BlockTypeRegistry: Initial skeleton
2019-08-05 21:42:54 +02:00
peterbell10
31a11a6df4
Optimise chunk set ( #4260 )
...
Closes #1244
Initially I was just going to add the cChunkData to cSetChunkData but profiling revealed
that the copying wasn't even the biggest slowdown. Much more time was being spent in
cChunk::CreateBlockEntities and cChunk::WakeUpSimulators than was in memcpy so I've made
those significantly faster as well.
Optimisations performed:
* cSetChunkData now stores blocks in a cChunkData object
* cChunkData objects can now perform moves even if they are using different pools
* cChunk::CreateBlockEntities now iterates in the correct order and only over present chunk sections
* Similarly for cChunk::WakeUpSimulators
* cSetChunkData::CalculateHeightMap now shortcuts to the highest present chunk section before checking blocks directly
2018-07-23 19:12:51 +01:00
peterbell10
1e312296cc
Fix cUUID::Variant ( #4213 )
2018-04-08 00:20:53 +02:00
peterbell10
1ea36298d2
Fix cUrlClient leak ( #4125 )
...
Fixes #4040
* The TCP connection is now shutdown after OnBodyFinished
* Any open connections are closed when cNetworkSingleton::Terminate() is called.
* Removed ownership cycles in cUrlClientRequest
* Added a check to the test to ensure there are no leaks.
2018-02-20 17:08:46 +00:00
peterbell10
d3c1c626f5
Deal with covered switches consistently ( #4161 )
...
* Fixes a number of "<function>: not all control paths return a value" warnings on MSVC.
* Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults.
* Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message()
2018-02-04 23:07:12 +00:00
peterbell10
2df14a0496
cChunk and cChunkData: Use vectors for block get and set functions ( #4172 )
...
* cChunkData: Change interface to use Vector3i
* cChunk: Add Vector3i overloads for bounded block get and set functions.
2018-02-04 22:15:31 +00:00
peterbell10
fa4844e168
CMake: Fix test builds on MSVC ( #4131 )
...
* Add test dependency missing for MSVC builds.
* Appveyor builds tests and tools
2018-01-22 09:39:41 +00:00
peterbell10
757231cc6e
Add the fmt library ( #4065 )
...
* Replaces AppendVPrintf with fmt::sprintf
* fmt::ArgList now used as a type safe alternative to varargs.
* Removed SIZE_T_FMT compatibility macros. fmt::sprintf is fully portable and supports %zu.
* Adds FLOG functions to log with fmt's native formatting style.
2018-01-03 17:41:16 +00:00
peterbell10
832b394715
Fix Travis build ( #4101 )
...
Stop using gdb on osx - was breaking the build
Add clang 3.5 build as travis now defaults to 5.0
Fix unknown-warning-option errors on AppleClang
ProtoProxy: Use nullptr
UrlClientTest: add override to callback destructor
Update jsoncpp to use nullptr
2017-12-22 18:25:46 +00:00
Bond-009
5badb9bcca
cChunkInterface GetBlock, GetBlockMeta, GetBlockTypeMeta use vectors ( #4050 )
2017-11-20 11:13:11 +00:00
Lukas Pioch
c5f590d460
Removed UTF-8 BOM ( #4033 )
2017-09-19 10:34:08 +02:00
peterbell10
642fc239e2
Add a test for cUUID ( #4021 )
2017-09-11 23:17:51 +02:00
peterbell10
84941bcc9f
Update mbedtls to 2.5.1 ( #3964 )
...
* Renaming changes:
* macro prefix "POLARSSL" -> "MBEDTLS"
* functions now prefixed with "mbedtls_"
* rename PolarSSL++ -> mbedTLS++
* rename polarssl submodule
* Use mbedtls' AES-CFB8 implementation.
* Add cSslConfig to wrap mbedtls_ssl_config
* Update cTCPLink and cBlockingSslClientSocket to use cSslConfig
* Use cSslConfig in cHTTPServer
* Use cSslConfig for cMojangAPI::SecureRequest
* CI Fixes
* Set -fomit-frame-pointer on the right target
2017-08-30 15:00:06 +01:00
peterbell10
f4f2fc7c3d
Add cUUID class ( #3871 )
2017-08-25 13:43:18 +01:00
peterbell10
096cdac80d
Implement protocol level chunk sparsing ( #3864 )
2017-08-21 17:56:53 +01:00
peterbell10
0d0323608d
cBlockHandler: take player by ref
2017-08-01 08:21:20 +02:00
Lane Kolbly
5402b214b3
Check for intersection between placed blocks and entities. ( #3850 )
...
* Check for intersection between placed blocks and entities.
+ Implemented GetPlacementCollisionBox, to permit custom placement collision boxes for blocks.
* Factored block-entity placement checking into another function in cPlayer.
- Removed vector min/max functions
* Use GetWorld to get the world in DoesPlacingBlocksIntersectEntity.
+ Added block height checks, allow different cEntity subclasses to decide whether they will prevent block placement.
2017-07-28 17:59:21 +01:00
peterbell10
bbf5bec817
BigFlower fixes ( #3826 )
...
* BigFlowers fixes
* Correct upper part meta
* Documented parameters to DoesIgnoreBuildCollision
2017-07-07 16:37:53 +02:00
peterbell10
d838ef7ba4
cBlockInfo static initialisation ( #3832 )
2017-07-03 18:34:27 +02:00
Mattes D
fe42538349
cBlockArea supports block entities. ( #3795 )
2017-06-24 11:58:06 +02:00
Mattes D
7ac3b0fa0b
Removed the LeakFinder for Windows. ( #3777 )
2017-06-19 11:05:19 +02:00
peterbell10
035ecdc9e2
Replace evdns with getaddrinfo and getnameinfo ( #3766 )
2017-06-15 11:03:49 +02:00
peterbell10
360d8eade0
FastRandom rewrite ( #3754 )
2017-06-13 21:35:30 +02:00
Mattes D
c939720c10
Gen: Added a simple PieceGeneratorBFSTree test.
2017-05-04 09:49:30 +02:00
Mattes D
96fdd72d45
Gen: Moved tests to a separate folder, unified shared sources.
2017-05-04 09:49:30 +02:00
Mattes D
187abe3f5e
Gen: Moved PiecePool into a separate file.
...
Also rewritten the PieceGenerator to use std::unique_ptr.
2017-05-04 09:49:30 +02:00
Mattes D
5dc0189a16
FastRandom: Added test of class re-creation. ( #3648 )
...
Tests for the precondition of #2935 (re-created cFastRandom generates the same sequence of numbers).
2017-03-28 16:37:25 +02:00
Mattes D
585571d78c
PieceGenerator: Added rotation-aware vertical connectors.
2017-02-13 16:50:35 +01:00
Mattes D
7cc3fb098d
DeadlockDetect now lists some tracked CS's stats.
2017-01-18 09:03:05 +01:00
Mattes D
30756e3f95
Tests: Added LuaState thread stress-test.
2017-01-15 15:11:18 +01:00
Mattes D
e28cecb3d1
Moved cPrefab parser self-check to the LoadablePieces test. ( #3536 )
2017-01-15 11:40:10 +01:00
Mattes D
d825456127
Added strict static_cast to void * in printf.
2016-11-13 17:26:58 +01:00
Mattes D
d2e8643607
Fixed type-casting-related warnings.
2016-08-24 22:26:53 +02:00
Mattes D
c45bd4b968
HTTP: Fixed empty headers parsing.
2016-08-24 08:28:44 +02:00
Mattes D
74918ce805
cUrlClient: Refactored callbacks to use UniquePtr.
2016-08-22 23:44:37 +02:00
Mattes D
641cb063bc
cTCPLink supports TLS out of the box.
2016-08-22 23:44:36 +02:00
Mattes D
6c760ee348
UrlClient: Basic HTTP implementation.
2016-08-22 22:16:42 +02:00
Alexander Harkness
58b29adc88
Fixed cFastRandom Test. ( #3291 )
...
This resolves #3290
2016-08-03 09:35:42 +02:00
Mattes D
8eaa8613da
CMake: Remove needless minimum version specifications.
2016-07-18 22:11:42 +02:00
Mattes D
1462e4f70e
Self tests ( #3242 )
...
* SelfTests: Added a cEvent stress-test.
* cNetwork: Fixed startup event hang.
The original code used to hang with a ~ 1:50000 chance, because on Linux the cEvent was destroyed before its "Set()" returned.
2016-06-26 14:51:12 +01:00
Mattes D
4d9769a484
SelfTests: More logging for EnumInterfaces.
2016-06-18 13:12:11 +02:00
Mattes D
ea47247dc7
SelfTests: Print a quick message on test start.
2016-06-18 13:12:10 +02:00
Mattes D
36eefbf0f2
SelfTests: Removed the unneeded cSelfTests class.
2016-06-18 13:12:10 +02:00
Mattes D
aa4b3ebf2f
SelfTests: Fixed HTTPMessageParser tests for out-of-source builds.
2016-06-18 13:12:09 +02:00
Mattes D
82e81c01a2
SelfTests: Fixed missing override keyword in EchoServer.
2016-06-18 13:12:09 +02:00
Mattes D
75a81cf753
SelfTests: Moved BoundingBox test to a separate project.
2016-06-18 13:12:09 +02:00
Mattes D
a781be5456
SelfTests: Moved SchematicFileSerializer test into a separate project.
2016-06-18 13:12:08 +02:00
Mattes D
db17f585af
SelfTests: Moved cCompositeChat test to a separate project.
2016-06-18 13:12:08 +02:00
Mattes D
ab6f68b42c
SelfTests: Moved ByteBuffer test to a separate project.
2016-06-18 13:12:07 +02:00
Mattes D
3d164a77cb
SelfTests: Organized into solution folders.
2016-06-18 13:12:07 +02:00
Mattes D
3184433756
Moved NetworkInterfaceEnum test to a separate test project.
2016-06-18 13:12:06 +02:00
LogicParrot
77bf00a599
Out of world blocks are now always considered air blocks
2016-04-23 09:54:34 +03:00
Mattes D
52d18b4559
WebAdmin uses the new HTTP parser framework.
2016-03-01 16:19:58 +01:00
Mattes D
12d95ab047
HTTP: Fixed response parser, unified API.
2016-03-01 16:19:58 +01:00
Mattes D
1d05fc95ae
Added unit test for parsing HTTP request.
2016-03-01 16:19:57 +01:00
Mattes D
80e1eb37dd
Renamed leftover strings to Cuberite / Server, as needed.
...
Also upgraded the user setting file for MSVC to 2013.
2016-01-01 21:05:09 +01:00
Mattes D
122d824a8a
Added a Json parser and serializer to Lua API.
2015-12-24 14:00:31 +01:00
Alexander Harkness
8b851d5048
Added HTTPS links wherever they are supported.
2015-12-19 14:30:32 +00:00
tycho
91d0abae4c
Working coverage build
2015-12-18 11:19:21 +01:00
Gargaj
66e6589883
blockheight mechanism
2015-12-13 15:16:15 +01:00
Mattes D
b8fbba5eb9
Added PieceStructures generator.
2015-12-01 10:35:07 +01:00
Tiger Wang
4315a11393
Fixed and improved restarting
...
Restarts are now an actual, close-as-possible to application
exit+reopen.
2015-08-20 16:15:23 +01:00
Tiger Wang
8656e149c8
Improved maps
2015-07-14 21:46:30 +01:00
Mattes D
66a164a9a7
Added neighbor specification in the OnNeighborChanged() block callback.
...
Fixes the OnNeighborChanged endless recursion with large melon / pumpkin fields.
Fixes #2213 .
2015-07-01 10:40:16 +02:00
Samuel Barney
e70e2b8ecc
Rebased version of Code
2015-06-22 11:29:38 -06:00
Mattes D
e06dd8f20e
Added basic support for loading village prefabs from files.
2015-06-20 15:37:41 +02:00
Mattes D
8df31067d4
Externalized cPrefabPiecePool self-test.
2015-06-19 16:15:59 +02:00
tycho
51b4584b42
Fix clang 3.6 flags to only be used in clang 3.6
2015-05-24 15:22:55 +01:00
tycho
95b81b3ef1
Disable -Werror for warnings in tests.
2015-05-24 14:16:05 +01:00
tycho
a5624debcb
Fix tests
2015-05-23 13:21:02 +01:00
tycho
7f35671b21
Fix tests
2015-05-19 19:53:16 +01:00
Mattes D
591b4eeb8a
Network tests: Fixed clang warnings.
2015-02-20 16:08:21 +01:00
Mattes D
014b96adb3
Exported cServerHandle and cNetwork:Listen to Lua.
...
Also added an example to the NetworkTest plugin.
2015-02-04 08:40:52 +01:00
Mattes D
053362e604
Added network termination called at app exit.
...
This fixes a crash in MSVC runtime caused by joining a thread in a global var's destructor.
2015-01-27 14:53:37 +01:00
Mattes D
9014bdfa32
cNetwork: Renamed callback to OnConnected()
2015-01-22 22:49:37 +01:00
Mattes D
dbf7f13bd4
cNetwork: Added link creation callback.
...
This allows the callback classes to store the link inside them and use it internally later on, mainly for sending data.
2015-01-22 20:13:06 +01:00
Mattes D
5b4c5cf2be
cNetwork: Changed listening API.
...
The link-callbacks for each new accepted link are now received from the OnIncomingConnection listen-callback.
2015-01-22 20:13:05 +01:00
Mattes D
64855ed340
cNetwork: Added error message to error callbacks.
2015-01-22 20:13:04 +01:00
Mattes D
d4682463a1
cNetwork: Fixed race conditions with lookups; proper shutdown.
2015-01-22 20:13:02 +01:00
Mattes D
c0cb787c10
cNetwork: Split the main cpp file into several files.
2015-01-22 20:13:02 +01:00
Mattes D
d3076a3e16
cNetwork: Split cNetworkSingleton to a separate file.
2015-01-22 20:13:00 +01:00
Mattes D
7cddb62374
cNetwork: Added an OnError callback for listening servers.
...
The callback receives the error details.
2015-01-22 20:12:57 +01:00
Mattes D
ddb1818dd5
cNetwork: Added multithreading protection.
2015-01-22 20:12:50 +01:00
Mattes D
d8ac99a037
cNetwork: Implemented connection shutdown and close.
2015-01-22 20:12:49 +01:00
Mattes D
9ffca12709
cNetwork: Fixed Linux compilation.
2015-01-22 20:12:48 +01:00
Mattes D
a2aa37bdc5
cNetwork: Implemented link address getting.
2015-01-22 20:12:47 +01:00
Mattes D
28e97d5468
cNetwork: Implemented basic server functionality.
2015-01-22 20:12:46 +01:00
Mattes D
251c96952b
cNetwork: Implemented IP-to-hostname lookup.
2015-01-22 20:12:45 +01:00
Mattes D
fde44cba08
cNetwork: Implemented HostnameToIP lookups.
2015-01-22 20:12:45 +01:00
Tycho
a9b8a530b1
Extracted Google connection test
2015-01-22 20:12:42 +01:00
Tiger Wang
17be0e3b7a
Removed test
2014-12-13 12:17:04 +00:00
Tiger Wang
44b2deab97
Fixed compilation?
2014-11-01 16:36:45 +00:00
worktycho
c40f65ad83
Update creatable.cpp
2014-09-27 15:29:11 +01:00
Tycho
73dfe1fe81
Fix accedental c++11
2014-09-17 18:59:45 +01:00
Tycho
6e7c0e33b5
Added first test to show the object can be created
2014-09-17 18:40:10 +01:00
madmaxoft
d9f6c691cc
CopyBlocks test: decreased the test size.
...
It just needlessly ate up test time; there's no need for such rigorous testing once the test started succeeding.
2014-09-01 21:31:27 +02:00
Tycho
ee50790398
Merge branch 'master' of github.com:mc-server/MCServer
2014-06-16 15:12:50 +01:00
Mattes D
f2470ff7c1
Reduced the number of cChunkData::CopyBlockTypes() tests, added progress.
2014-05-30 18:32:15 +02:00
Tycho
cbb9e15257
Fix bugs in test
2014-05-30 17:13:36 +01:00
Mattes D
76c07b1ec7
Added a cChunkData::CopyBlockTypes() unit test.
2014-05-30 17:44:24 +02:00