Merge branch 'v0.18.x'
This commit is contained in:
		| @@ -41,10 +41,21 @@ class PosixCond { | ||||
| 	pthread_cond_t cond; | ||||
|  | ||||
| public: | ||||
| #ifndef __BIONIC__ | ||||
| 	constexpr | ||||
| #if defined(__NetBSD__) || defined(__BIONIC__) | ||||
| 	/* NetBSD's PTHREAD_COND_INITIALIZER is not compatible with | ||||
| 	   "constexpr" */ | ||||
| 	PosixCond() { | ||||
| 		pthread_cond_init(&cond, nullptr); | ||||
| 	} | ||||
|  | ||||
| 	~PosixCond() { | ||||
| 		pthread_cond_destroy(&cond); | ||||
| 	} | ||||
| #else | ||||
| 	/* optimized constexpr constructor for sane POSIX | ||||
| 	   implementations */ | ||||
| 	constexpr PosixCond():cond(PTHREAD_COND_INITIALIZER) {} | ||||
| #endif | ||||
| 	PosixCond():cond(PTHREAD_COND_INITIALIZER) {} | ||||
|  | ||||
| 	PosixCond(const PosixCond &other) = delete; | ||||
| 	PosixCond &operator=(const PosixCond &other) = delete; | ||||
|   | ||||
| @@ -41,10 +41,21 @@ class PosixMutex { | ||||
| 	pthread_mutex_t mutex; | ||||
|  | ||||
| public: | ||||
| #ifndef __BIONIC__ | ||||
| 	constexpr | ||||
| #if defined(__NetBSD__) || defined(__BIONIC__) | ||||
| 	/* NetBSD's PTHREAD_MUTEX_INITIALIZER is not compatible with | ||||
| 	   "constexpr" */ | ||||
| 	PosixMutex() { | ||||
| 		pthread_mutex_init(&mutex, nullptr); | ||||
| 	} | ||||
|  | ||||
| 	~PosixMutex() { | ||||
| 		pthread_mutex_destroy(&mutex); | ||||
| 	} | ||||
| #else | ||||
| 	/* optimized constexpr constructor for sane POSIX | ||||
| 	   implementations */ | ||||
| 	constexpr PosixMutex():mutex(PTHREAD_MUTEX_INITIALIZER) {} | ||||
| #endif | ||||
| 	PosixMutex():mutex(PTHREAD_MUTEX_INITIALIZER) {} | ||||
|  | ||||
| 	PosixMutex(const PosixMutex &other) = delete; | ||||
| 	PosixMutex &operator=(const PosixMutex &other) = delete; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Max Kellermann
					Max Kellermann