Commit graph

14258 commits

Author SHA1 Message Date
heinrich5991 9cce68023a Export all symbols from the main executable for the antibot
Add `-rdynamic` if supported by the linker.

Not all symbols being exported broke our builds recently, the antibot
library used `mem_comp` from the main binary but it wasn't exported,
leading to the following runtime error:

```
./DDRace64-Server_sql: symbol lookup error: /home/teeworlds/servers/libantibot.so: undefined symbol: mem_comp
```
2020-12-09 10:17:11 +01:00
bors[bot] 4c08a610bb
Merge #3386
3386: Add FreeBSD instructions r=heinrich5991 a=def-

https://www.freshports.org/games/DDNet

Thanks to @AMDmi3. Not sure if "pkg install DDNet" can also be used.

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: def <dennis@felsin9.de>
2020-12-08 18:13:26 +00:00
bors[bot] 1e599f6b68
Merge #3390
3390: Synchronize database thread via atomic_bool instead of use_count from shared pointer r=def- a=Zwelf

All database results are now derived from ISqlResult, to store the synchronization variable there. All accesses to results were changed in score.cpp (`s/pData->m_pResult/pResult/g`) causing a rather big diff. This was necessary, since the database worker has to access the result for each query to notify when a query is complete.

Fixes #3380
<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame (already some queries with sqlite, but not all yet)
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [x] Considered possible null pointers and out of bounds array indexing
- [x] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Zwelf <zwelf@strct.cc>
2020-12-08 17:12:53 +00:00
Zwelf b256250b7b Synchronize database thread via atomic_bool instead of use_count from shared pointer 2020-12-08 18:11:00 +01:00
def 458c752ee7 Put style checks into individual steps 2020-12-08 15:02:16 +01:00
ChillerDragon f2c834e881 Add shellcheck to ci 2020-12-08 15:02:16 +01:00
def 1dcc1e4026 Run shellcheck over check_dilate.sh 2020-12-08 15:02:16 +01:00
def 2544c758a0 Add w as default bind for dummy hammer 2020-12-08 14:42:22 +01:00
def fb7a33d2b5 Add FreeBSD instructions
https://www.freshports.org/games/DDNet
2020-12-08 14:41:35 +01:00
heinrich5991 e805e42a94 Alternative alternative fix for malloc of size 0
Has a short diff to the original code before a4f13ed4a8.
Supersedes #3353. Thanks for the idea, @timakro.
2020-12-08 12:29:10 +01:00
bors[bot] 56a90c25ec
Merge #3387
3387: Fix CMake deprecation warning for old CMake versions r=def- a=heinrich5991

Fixes #3355 

Works around https://github.com/google/googletest/issues/3040.

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-12-08 09:53:46 +00:00
heinrich5991 037b928dd7 Manually patch gtest to allow CMake version 2.8.12...3.19.1
Fixes #3355.

Works around https://github.com/google/googletest/issues/3040.
2020-12-08 10:24:22 +01:00
heinrich5991 abd2a54522 Bump to gtest from a commit SHA to 1.10.1 2020-12-08 10:24:22 +01:00
heinrich5991 59cbc01415 Bump minimum CMake version from 2.8 to 2.8.12
Declare that we're fine with policies up to 3.19.1. This should fix
policy errors and "too low cmake_minimal_version() errors" for the
forseeable future.
2020-12-08 10:24:22 +01:00
heinrich5991 490a436ee6 Remove failing blocklist_driver tests
These were tests that fail when the blocklist changes.
2020-12-08 10:24:22 +01:00
Dennis Felsing 516c1cc599
Merge pull request #3382 from Zwelf/pr-fix-race-condition
Fix storing load/save result in main thread without incrementing usage count
2020-12-04 11:48:14 +01:00
Zwelf e15a91911e Fix storing load/save result in main thread without incrementing usage count
Resulting to race condition, since the main thread always thought that the
load/save thread already completed. Passing the shared_ptr by reference to
prevent a similar future bug to happen.

Fixes #3380
2020-12-04 11:09:21 +01:00
Dennis Felsing e0749a4472
Merge pull request #3378 from Jupeyy/pr_increase_driver_range
Increase Intel driver blocklist range
2020-12-03 17:08:37 +01:00
Jupeyy 7c4f7cd265 Increase Intel driver blocklist range 2020-12-03 16:42:50 +01:00
ChillerDragon 406502b8df Ignore map_optimize 2020-12-02 14:47:24 +01:00
def b63d20a6e0 Check for m_pCharacter before accessing it (fixes #3372) 2020-12-02 11:37:55 +01:00
bors[bot] 0848df797a
Merge #3315
3315: Remove annoying "added option" logging r=heinrich5991 a=def-

Fills our logs all the time

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: def <dennis@felsin9.de>
2020-11-30 15:46:25 +00:00
def b32e421dff Remove annoying "added option" logging
Fills our logs all the time
2020-11-30 08:08:37 +01:00
bors[bot] 6a92178801
Merge #3367
3367: Rename lock and semaphore classes to match current naming r=def- a=edg-l

Changed these old classes names to match our current standards.

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [x] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Edgar <git@edgarluque.com>
2020-11-29 18:44:44 +00:00
Edgar 105b049497
Rename lock and semaphore classes to match current naming 2020-11-29 18:12:58 +01:00
bors[bot] 6eb56ffb13
Merge #3341
3341: Check finish of team after player joins spectators r=heinrich5991 a=def-

Reported by Jupeyy

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [x] Considered possible null pointers and out of bounds array indexing
- [x] Changed no physics that affect existing maps
- [x] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: def <dennis@felsin9.de>
2020-11-28 20:18:37 +00:00
def 9d66c2530b Check finish of team after player joins spectators
Reported by Jupeyy
2020-11-28 20:59:51 +01:00
bors[bot] 8167d5da2f
Merge #3352
3352: Add benchmarking section to README r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: def <dennis@felsin9.de>
2020-11-28 17:16:44 +00:00
bors[bot] b8fca40851
Merge #3340
3340: Fix vec_base constructors & remove useless operator r=heinrich5991 a=Jupeyy

Interestingly besides it found unused variables, this also found some "logic" errors, where vectors were used in `if`.

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-11-28 17:06:25 +00:00
bors[bot] ff16b223ae
Merge #3365
3365: Update brew command r=def- a=b3z

`brew cask install ddnet` is depreciated.


Co-authored-by: b3z <b3z@zeppel.eu>
2020-11-27 08:03:08 +00:00
b3z a177ade918
Update brew command
`brew cask install ddnet` is depreciated.
2020-11-27 08:56:22 +01:00
bors[bot] 90bbdd41dd
Merge #3360
3360: Update brazilian_portuguese.txt r=def- a=rffontenelle

Update translation

Co-authored-by: Rafael Fontenelle <rffontenelle@users.noreply.github.com>
2020-11-26 15:00:05 +00:00
Rafael Fontenelle a5f0dbb567
Update brazilian_portuguese.txt 2020-11-26 08:56:13 -03:00
bors[bot] 80a65c6326
Merge #3358
3358: Fix prediction with global collision off tiles and tunings (fix #2510) r=def- a=trml

Tested it now, and it seems that only the hook and collision off tiles were affected by this.

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [x] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: trml <trml@users.noreply.github.com>
2020-11-25 22:59:17 +00:00
trml 7bfd708405 Set ddnetchar flags when collision is disabled with server tunings 2020-11-25 23:38:29 +01:00
bors[bot] 86e46b957d
Merge #3357
3357: Fix leaks, initialize everything in UI Element Rect r=def- a=Jupeyy

This time tested with valgrind to find uninitialized memory(the one i found isnt critical)

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-11-25 12:50:42 +00:00
Jupeyy c0dbd4a6f5 Fix leak, initialize UI Element Rect 2020-11-25 13:11:34 +01:00
bors[bot] b4ae500a49
Merge #3356
3356: fix typo "authroized" r=def- a=headshot2017

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Headshot <36455681+headshot2017@users.noreply.github.com>
2020-11-25 07:16:27 +00:00
Headshot 9b460750fa
fix typo "authroized" 2020-11-24 21:50:10 -04:00
bors[bot] e343585c23
Merge #3354
3354: Remove remaining tileset_ occurrence r=def- a=rffontenelle

ddnet#2796 removed tileset_* tools, but CMakeLists.txt still tries to match their filename. This patch removes it as it is not longer needed.

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Rafael Fontenelle <rffontenelle@users.noreply.github.com>
2020-11-24 12:30:45 +00:00
Rafael Fontenelle 8d3d46a55e
Remove remaining tileset_ occurrence
tileset_* tools were removed in c839dc96
2020-11-24 09:08:59 -03:00
bors[bot] 395679632a
Merge #2798
2798: Add check_dilate (WIP) r=def- a=def-

Not sure what files to check actually, many are apparently not dilated.

Co-authored-by: def <dennis@felsin9.de>
Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-11-24 11:36:50 +00:00
Jupeyy b722dcc7b7 Dilate & optimize non-dilated images 2020-11-24 11:15:24 +01:00
def 0822f9cecd Add check_dilate 2020-11-24 11:15:24 +01:00
def f523a229b2 Add benchmarking section to README 2020-11-23 13:37:33 +01:00
bors[bot] a077f727e8
Merge #3348
3348: Fix scroll bar (fixes #3347) r=Jupeyy a=def-

Caused by https://github.com/ddnet/ddnet/pull/3304/

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: def <dennis@felsin9.de>
2020-11-22 14:08:19 +00:00
bors[bot] 69184ea020
Merge #3349
3349: Update italian.txt r=def- a=hhh26459



Co-authored-by: hhh26459 <74860643+hhh26459@users.noreply.github.com>
2020-11-22 12:22:16 +00:00
hhh26459 751cade38b
Update italian.txt 2020-11-22 13:18:42 +01:00
def bb43660cd4 Fix scroll bar (fixes #3347) 2020-11-21 18:30:24 +01:00
bors[bot] 1883546939
Merge #3201
3201: Map optimizer r=def- a=Jupeyy

Wrote a map optimizer(very aggressive, explain later why).
It reduces map sizes by ~40% (optimized the whole ddnet-maps repo and it was around 40% smaller afterwards)

Test and idea by mind, credits to him

What it does, and why I called it aggressive:

- It removes all unused tiles from embedded images
- It clears transparent pixels and dilates them as 2D array textures, instead of simple 2D textures.
- It uses zlibs best compression

So yeah, it changes the output map(keeps the source file working, output is in "out" dir), its not the same as before, it's a nice tool for optimizing size with a lot of embedded images as a final release, or when using higher resolution textures.

Co-authored-by: jupeyy <jupeyy@am-6036ddb5ef41.intern>
2020-11-21 11:19:29 +00:00