Files
bind9/lib/isc/include/isc/once.h
Ondřej Surý cedfc97974 Improve reporting for pthread_once errors
Replace all uses of RUNTIME_CHECK() in lib/isc/include/isc/once.h with
PTHEADS_RUNTIME_CHECK(), in order to improve error reporting for any
once-related run-time failures (by augmenting error messages with
file/line/caller information and the error string corresponding to
errno).
2022-10-14 16:39:21 +02:00

31 lines
797 B
C

/*
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
*
* SPDX-License-Identifier: MPL-2.0
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, you can obtain one at https://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
*/
#pragma once
/*! \file */
#include <pthread.h>
#include <isc/result.h>
typedef pthread_once_t isc_once_t;
#define ISC_ONCE_INIT PTHREAD_ONCE_INIT
#define isc_once_do(op, f) \
{ \
int _ret = pthread_once((op), (f)); \
PTHREADS_RUNTIME_CHECK(pthread_once, _ret); \
}