Commit graph

9794 commits

Author SHA1 Message Date
bors[bot] c0b3604fa2
Merge #1959
1959: Expire server info on connected/drop events r=Learath2 a=def-



Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2019-11-04 15:22:56 +00:00
Dennis Felsing 785ec3d345 Expire server info on connected/drop events 2019-11-04 15:45:55 +01:00
Learath2 c2bcd3bd4d Fix bug 2019-11-04 01:06:52 +01:00
bors[bot] 0de012572b
Merge #1955
1955: Cache serverinfo responses r=def- a=Learath2

I'm not sure I like it but it works

Co-authored-by: Learath2 <learath2@gmail.com>
2019-11-03 20:09:21 +00:00
Learath2 c0b0f48d16 Oops 2019-11-03 20:58:35 +01:00
bors[bot] 7d07b311fd
Merge #1956
1956: Fix uninitialized variable r=Learath2 a=def-

As reported by valgrind --tool=memcheck:

==344082== Conditional jump or move depends on uninitialised value(s)
==344082==    at 0x483BC85: strlen (vg_replace_strmem.c:461)
==344082==    by 0x5B9E61D: __vfprintf_internal (in /usr/lib/libc-2.30.so)
==344082==    by 0x5BB0409: __vsnprintf_internal (in /usr/lib/libc-2.30.so)
==344082==    by 0x222AE7: str_format (system.c:2350)
==344082==    by 0x2196AB: CStorage::GetPath(int, char const*, char*, unsigned int) (storage.cpp:274)
==344082==    by 0x219DDD: CStorage::RemoveFile(char const*, int) (storage.cpp:409)
==344082==    by 0x255D3C: CClient::DemoRecorder_Stop(int, bool) (client.cpp:3546)
==344082==    by 0x2569E7: CClient::ConchainReplays(IConsole::IResult*, void*, void (*)(IConsole::IResult*, void*), void*) (client.cpp:3727)
==344082==    by 0x1F4659: CConsole::Con_Chain(IConsole::IResult*, void*) (console.cpp:1169)
==344082==    by 0x1E4C2C: CConsole::ExecuteLineStroked(int, char const*, int, bool) (console.cpp:504)
==344082==    by 0x1E4F37: CConsole::ExecuteLine(char const*, int, bool) (console.cpp:558)
==344082==    by 0x1E5240: CConsole::ExecuteFile(char const*, int, bool, int) (console.cpp:604)

Co-authored-by: def <dennis@felsin9.de>
2019-11-03 19:58:09 +00:00
def fdaafea6b5 Also init m_aClients[*].m_Latency
as reported by valgrind --tool=memcheck:

==376722== Conditional jump or move depends on uninitialised value(s)
==376722==    at 0x1CDBDB: int maximum<int>(int, int) (math.h:79)
==376722==    by 0x216A46: CPlayer::Tick() (player.cpp:174)
==376722==    by 0x1FB308: CGameContext::OnTick() (gamecontext.cpp:658)
==376722==    by 0x1C60AF: CServer::Run() (server.cpp:2046)
==376722==    by 0x1CB099: main (server.cpp:3040)
==376722==
==376722== Conditional jump or move depends on uninitialised value(s)
==376722==    at 0x183F27: int minimum<int>(int, int) (math.h:77)
==376722==    by 0x216A65: CPlayer::Tick() (player.cpp:175)
==376722==    by 0x1FB308: CGameContext::OnTick() (gamecontext.cpp:658)
==376722==    by 0x1C60AF: CServer::Run() (server.cpp:2046)
==376722==    by 0x1CB099: main (server.cpp:3040)
2019-11-03 18:54:25 +01:00
bors[bot] f0245b1723
Merge #1957
1957: Don't access m_aClients wiht invalid ClientID r=Learath2 a=def-



Co-authored-by: def <dennis@felsin9.de>
2019-11-03 17:36:26 +00:00
Learath2 c4d18118c1 Use automatic storage for the data 2019-11-03 18:31:05 +01:00
def f9598c8ba8 Don't access m_aClients wiht invalid ClientID 2019-11-03 18:10:30 +01:00
def 258eaf5a98 Fix uninitialized variable
As reported by valgrind --tool=memcheck:

[201==344082== Conditional jump or move depends on uninitialised value(s)
==344082==    at 0x483BC85: strlen (vg_replace_strmem.c:461)
==344082==    by 0x5B9E61D: __vfprintf_internal (in /usr/lib/libc-2.30.so)
==344082==    by 0x5BB0409: __vsnprintf_internal (in /usr/lib/libc-2.30.so)
==344082==    by 0x222AE7: str_format (system.c:2350)
==344082==    by 0x2196AB: CStorage::GetPath(int, char const*, char*, unsigned int) (storage.cpp:274)
==344082==    by 0x219DDD: CStorage::RemoveFile(char const*, int) (storage.cpp:409)
==344082==    by 0x255D3C: CClient::DemoRecorder_Stop(int, bool) (client.cpp:3546)
==344082==    by 0x2569E7: CClient::ConchainReplays(IConsole::IResult*, void*, void (*)(IConsole::IResult*, void*), void*) (client.cpp:3727)
==344082==    by 0x1F4659: CConsole::Con_Chain(IConsole::IResult*, void*) (console.cpp:1169)
==344082==    by 0x1E4C2C: CConsole::ExecuteLineStroked(int, char const*, int, bool) (console.cpp:504)
==344082==    by 0x1E4F37: CConsole::ExecuteLine(char const*, int, bool) (console.cpp:558)
==344082==    by 0x1E5240: CConsole::ExecuteFile(char const*, int, bool, int) (console.cpp:604)
2019-11-03 18:05:42 +01:00
Learath2 52cca29cd9 Use a std::list, improve variable naming 2019-11-03 15:39:32 +01:00
sirius 8c48e7d633 some small changes 2019-11-03 11:20:24 +08:00
Learath2 3d495a9936 Initialize variables 2019-11-03 01:53:50 +01:00
Learath2 79e4651d5b Only update serverinfo when needed 2019-11-03 01:07:10 +01:00
Learath2 7f0589bff7 Cache serverinfo responses 2019-11-03 00:33:30 +01:00
sirius 4cc03af9a9 remove useless functions for previous audio sync 2019-11-02 18:32:48 +08:00
sirius e910fe404f Direct mix when recording audio now, and seems solve the stuck problem when
DDNet is not the focusing window
2019-11-02 18:21:47 +08:00
sirius f2ffa996c2 GetSync calculate only when m_Recording true (otherwise sometimes core dump) 2019-11-01 10:52:24 +08:00
Sirius 45263ebdd0
Merge branch 'master' into demo_render2 2019-10-31 22:08:49 +08:00
sirius 3bf19f387d update README 2019-10-31 22:03:23 +08:00
sirius ae1ff28579 not abort sample when sync now 2019-10-31 22:01:12 +08:00
Dennis Felsing 516bc98436 Version 12.7.3 2019-10-31 14:37:09 +01:00
Dennis Felsing 40f815a746
Merge pull request #1954 from WsYFU/master
change filter logic
2019-10-31 14:29:35 +01:00
WsYFU 1a16f5b5f0
Update serverbrowser.cpp 2019-10-31 16:16:35 +03:00
sirius 5ad8028aa4 sync audio frame with video frame number 2019-10-31 20:02:41 +08:00
sirius 99f6b66fbd solve sync between video and audio by magic number 2019-10-31 17:37:38 +08:00
sirius 99df692e00 interleaving problem solved, but a little misplacement of video and audio stream 2019-10-31 17:00:05 +08:00
sirius 0a6edd02ca solve the problem when video finished 2019-10-30 22:26:45 +08:00
sirius 9f009e0e04 interleaving problem seems solved, but still have some problem when playing by mplayer 2019-10-30 22:10:44 +08:00
sirius f0e7ca200f remove two first audio frames to avoid noise in the begining 2019-10-30 10:56:20 +08:00
sirius a7c2a65ebc audio seems correct, but need more elegant way, and still bad interleaving 2019-10-30 00:01:25 +08:00
bors[bot] 45cfebc5e6
Merge #1953
1953: Fix crash when switch (un)deep number is 0 r=def- a=12pm



Co-authored-by: 12pm <30786226+12pm@users.noreply.github.com>
2019-10-27 15:32:20 +00:00
12pm f66dc75400 Fix crash when switch (un)deep number is 0 2019-10-27 14:28:40 +01:00
bors[bot] c3e4bbcb4b
Merge #1952
1952: Remove for loop in camera r=def- a=Ryozuki

I don't know if this makes it faster, probably not even noticable, but i like it more this way.

Co-authored-by: Ryozuki <ryo@ryozuki.xyz>
2019-10-27 12:06:55 +00:00
Ryozuki 2bf76aac67
remove for loop in camera 2019-10-27 13:04:08 +01:00
bors[bot] 4717b21844
Merge #1934
1934: repair the problem that class selector appear when demo playing r=def- a=sirius1242

I think this problem is solved, but this may be a little hack, I don't know the effect of this if-else condition.

![2019-10-12-12-27-ScreenShot2](https://user-images.githubusercontent.com/32300858/66710842-eac12980-edb2-11e9-8866-cf3a1348616b.png)


Co-authored-by: sirius <sirius.ustc@gmail.com>
2019-10-27 08:31:41 +00:00
sirius 49ff1a5827 not play sound when rendering video 2019-10-26 20:01:09 +08:00
sirius 9866a73b1c sync audio and video 2019-10-26 19:54:25 +08:00
bors[bot] dc6a2959be
Merge #1949
1949: Add cl_dummy_resetonswitch 2 r=Learath2 a=d3fault

Idea by @ChillerDragon :
Only resets the active tee. So if you hold right and switch your
dummy keeps walking. But if you switch back you don't have
to press right twice to walk again.

Fix #1854

Co-authored-by: d3fault <d3fault@d3fault.net>
2019-10-25 11:31:19 +00:00
bors[bot] 4fc907933e
Merge #1946
1946: Don't locally render your own dummy's afk emote. Other players will still see it r=Learath2 a=d3fault

Afk emote on your own dummy is pointless and annoying, esp on dummy maps.

Co-authored-by: d3fault <d3fault@d3fault.net>
2019-10-25 01:21:21 +00:00
d3fault ecf48a89e9 Add cl_dummy_resetonswitch 2
Idea by ChillerDragon:
Only resets the active tee. So if you hold right and switch your
dummy keeps walking. But if you switch back you don't have
to press right twice to walk again.

Fix #1854
2019-10-24 18:11:42 -07:00
bors[bot] 7cfcfbcfa2
Merge #1948
1948: Fix objc_msgSend() xcode11 error r=def- a=ChillerDragon

Fix by @heinrich5991
from the documentation of objc_msgSend in <objc/message.h>
```
/* Basic Messaging Primitives
 *
 * On some architectures, use objc_msgSend_stret for some struct return types.
 * On some architectures, use objc_msgSend_fpret for some float return types.
 * On some architectures, use objc_msgSend_fp2ret for some float return types.
 *
 * These functions must be cast to an appropriate function pointer type
 * before being called.
 */
OBJC_EXPORT void
objc_msgSend(void /* id self, SEL op, ... */ )
    OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0);

OBJC_EXPORT void
objc_msgSendSuper(void /* struct objc_super *super, SEL op, ... */ )
    OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0);
```

Co-authored-by: ChillerDragon <chillerdragon@gmail.com>
2019-10-23 16:43:52 +00:00
ChillerDragon 47b41f35ff Fix objc_msgSend() xcode11 error
Fix by @heinrich5991
from the documentation of objc_msgSend in <objc/message.h>
```
/* Basic Messaging Primitives
 *
 * On some architectures, use objc_msgSend_stret for some struct return types.
 * On some architectures, use objc_msgSend_fpret for some float return types.
 * On some architectures, use objc_msgSend_fp2ret for some float return types.
 *
 * These functions must be cast to an appropriate function pointer type
 * before being called.
 */
OBJC_EXPORT void
objc_msgSend(void /* id self, SEL op, ... */ )
    OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0);

OBJC_EXPORT void
objc_msgSendSuper(void /* struct objc_super *super, SEL op, ... */ )
    OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0);
```
2019-10-23 17:23:51 +02:00
bors[bot] 3b5a085de7
Merge #1947
1947: Optimize CCollision::MoveBox to stop looping once velocity is 0 r=heinrich5991 a=def-



Co-authored-by: def <dennis@felsin9.de>
2019-10-22 20:42:21 +00:00
def 8702af19b5 Optimize CCollision::MoveBox to stop looping once velocity is 0 2019-10-22 13:48:05 +02:00
d3fault 2943eb0d4f Don't locally render your own dummy's afk emote. Other players will still see it 2019-10-19 21:03:08 -07:00
sirius b175a6fd42 add button to use sound when rendering video 2019-10-17 13:38:00 +08:00
Dennis Felsing e5acf8b3ff
Merge pull request #1944 from def-/pr-array-bounds-false-positive
Disable warning for false positive
2019-10-16 16:33:47 +02:00
Dennis Felsing ae4f632bbd Disable warning for false positive 2019-10-16 14:33:58 +02:00