Merge branch 'v0.19.x'
This commit is contained in:
commit
674d14879f
2
NEWS
2
NEWS
@ -22,11 +22,13 @@ ver 0.20 (not yet released)
|
|||||||
|
|
||||||
ver 0.19.8 (not yet released)
|
ver 0.19.8 (not yet released)
|
||||||
* input
|
* input
|
||||||
|
- curl: fix bug after rewinding from end-of-file
|
||||||
- mms: reduce delay at the beginning of playback
|
- mms: reduce delay at the beginning of playback
|
||||||
* decoder
|
* decoder
|
||||||
- dsdiff, dsf: allow ID3 tags larger than 4 kB
|
- dsdiff, dsf: allow ID3 tags larger than 4 kB
|
||||||
- ffmpeg: support interleaved floating point
|
- ffmpeg: support interleaved floating point
|
||||||
* fix clang 3.6 warnings
|
* fix clang 3.6 warnings
|
||||||
|
* fix build failure on NetBSD
|
||||||
|
|
||||||
ver 0.19.7 (2014/12/17)
|
ver 0.19.7 (2014/12/17)
|
||||||
* input
|
* input
|
||||||
|
@ -160,6 +160,11 @@ AsyncInputStream::SeekDone()
|
|||||||
assert(io_thread_inside());
|
assert(io_thread_inside());
|
||||||
assert(IsSeekPending());
|
assert(IsSeekPending());
|
||||||
|
|
||||||
|
/* we may have reached end-of-file previously, and the
|
||||||
|
connection may have been closed already; however after
|
||||||
|
seeking successfully, the connection must be alive again */
|
||||||
|
open = true;
|
||||||
|
|
||||||
seek_state = SeekState::NONE;
|
seek_state = SeekState::NONE;
|
||||||
cond.broadcast();
|
cond.broadcast();
|
||||||
}
|
}
|
||||||
|
@ -20,17 +20,25 @@
|
|||||||
#ifndef MPD_THREAD_NAME_HXX
|
#ifndef MPD_THREAD_NAME_HXX
|
||||||
#define MPD_THREAD_NAME_HXX
|
#define MPD_THREAD_NAME_HXX
|
||||||
|
|
||||||
#ifdef HAVE_PTHREAD_SETNAME_NP
|
#if defined(HAVE_PTHREAD_SETNAME_NP) && !defined(__NetBSD__)
|
||||||
#include <pthread.h>
|
# define HAVE_THREAD_NAME
|
||||||
#include <stdio.h>
|
# include <pthread.h>
|
||||||
|
# include <stdio.h>
|
||||||
#elif defined(HAVE_PRCTL)
|
#elif defined(HAVE_PRCTL)
|
||||||
#include <sys/prctl.h>
|
# include <sys/prctl.h>
|
||||||
|
# ifdef PR_SET_NAME
|
||||||
|
# define HAVE_THREAD_NAME
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
SetThreadName(const char *name)
|
SetThreadName(const char *name)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_PTHREAD_SETNAME_NP
|
#if defined(HAVE_PTHREAD_SETNAME_NP) && !defined(__NetBSD__)
|
||||||
|
/* not using pthread_setname_np() on NetBSD because it
|
||||||
|
requires a non-const pointer argument, which we don't have
|
||||||
|
here */
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
pthread_setname_np(name);
|
pthread_setname_np(name);
|
||||||
#else
|
#else
|
||||||
@ -47,7 +55,7 @@ template<typename... Args>
|
|||||||
static inline void
|
static inline void
|
||||||
FormatThreadName(const char *fmt, gcc_unused Args&&... args)
|
FormatThreadName(const char *fmt, gcc_unused Args&&... args)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_PTHREAD_SETNAME_NP
|
#ifdef HAVE_THREAD_NAME
|
||||||
char buffer[16];
|
char buffer[16];
|
||||||
snprintf(buffer, sizeof(buffer), fmt, args...);
|
snprintf(buffer, sizeof(buffer), fmt, args...);
|
||||||
SetThreadName(buffer);
|
SetThreadName(buffer);
|
||||||
|
Loading…
Reference in New Issue
Block a user