X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Frrd_thread_safe.c;h=c910b988227c5968db5b59f92570c2b04f796c75;hb=eaf3af3f1af054366dbdf3eb522f5ef270759604;hp=7e58ca62abf8851033fc04fd52a62be832855dbe;hpb=7d0d6b07c9f5bd5dfd99aa7fe9826eebf2181f1f;p=rrdtool.git diff --git a/src/rrd_thread_safe.c b/src/rrd_thread_safe.c index 7e58ca6..c910b98 100644 --- a/src/rrd_thread_safe.c +++ b/src/rrd_thread_safe.c @@ -1,5 +1,5 @@ /***************************************************************************** - * RRDtool 1.2.23 Copyright by Tobi Oetiker, 1997-2007 + * RRDtool 1.3.2 Copyright by Tobi Oetiker, 1997-2008 * This file: Copyright 2003 Peter Stamfest * & Tobias Oetiker * Distributed under the GPL @@ -27,7 +27,7 @@ static pthread_once_t context_key_once = PTHREAD_ONCE_INIT; static void context_destroy_context( void *ctx_) { - struct rrd_context *ctx = ctx_; + rrd_context_t *ctx = ctx_; if (ctx) rrd_free_context(ctx); @@ -40,10 +40,10 @@ static void context_get_key( pthread_key_create(&context_key, context_destroy_context); } -struct rrd_context *rrd_get_context( +rrd_context_t *rrd_get_context( void) { - struct rrd_context *ctx; + rrd_context_t *ctx; pthread_once(&context_key_once, context_get_key); ctx = pthread_getspecific(context_key); @@ -58,9 +58,9 @@ struct rrd_context *rrd_get_context( const char *rrd_strerror( int err) { - struct rrd_context *ctx = rrd_get_context(); + rrd_context_t *ctx = rrd_get_context(); - if (strerror_r(err, ctx->lib_errstr, ctx->errlen)) + if (strerror_r(err, ctx->lib_errstr, sizeof(ctx->lib_errstr))) return "strerror_r failed. sorry!"; else return ctx->lib_errstr; @@ -71,12 +71,12 @@ const char *rrd_strerror( int err) { static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER; - struct rrd_context *ctx; + rrd_context_t *ctx; ctx = rrd_get_context(); pthread_mutex_lock(&mtx); - strncpy(ctx->lib_errstr, strerror(err), ctx->errlen); - ctx->lib_errstr[ctx->errlen] = '\0'; + strncpy(ctx->lib_errstr, strerror(err), sizeof(ctx->lib_errstr)); + ctx->lib_errstr[sizeof(ctx->lib_errstr) - 1] = '\0'; pthread_mutex_unlock(&mtx); return ctx->lib_errstr; }