Compile fix for mac

pull/11/head
Craig Tiller 10 years ago
parent d8532af01c
commit ad0dcdc212
  1. 14
      src/core/support/log_posix.c

@ -31,21 +31,27 @@
* *
*/ */
#define _POSIX_SOURCE
#ifndef _POSIX_C_SOURCE
#define _POSIX_C_SOURCE 200112L
#endif
#define _GNU_SOURCE #define _GNU_SOURCE
#include <grpc/support/port_platform.h> #include <grpc/support/port_platform.h>
#if defined(GPR_POSIX_LOG) #if defined(GPR_POSIX_LOG)
#include <grpc/support/alloc.h>
#include <grpc/support/log.h> #include <grpc/support/log.h>
#include <grpc/support/time.h> #include <grpc/support/time.h>
#include <stdio.h> #include <stdio.h>
#include <stdarg.h> #include <stdarg.h>
#include <string.h> #include <string.h>
#include <stdio.h>
#include <time.h> #include <time.h>
#include <pthread.h> #include <pthread.h>
static long gettid() { return pthread_self(); } static long gettid() { return (long)(gpr_intptr)pthread_self(); }
void gpr_log(const char *file, int line, gpr_log_severity severity, void gpr_log(const char *file, int line, gpr_log_severity severity,
const char *format, ...) { const char *format, ...) {
@ -55,7 +61,7 @@ void gpr_log(const char *file, int line, gpr_log_severity severity,
int ret; int ret;
va_list args; va_list args;
va_start(args, format); va_start(args, format);
ret = vsnprintf(buf, format, args); ret = vsnprintf(buf, sizeof(buf), format, args);
va_end(args); va_end(args);
if (ret < 0) { if (ret < 0) {
message = NULL; message = NULL;
@ -64,7 +70,7 @@ void gpr_log(const char *file, int line, gpr_log_severity severity,
} else { } else {
message = allocated = gpr_malloc(ret + 1); message = allocated = gpr_malloc(ret + 1);
va_start(args, format); va_start(args, format);
vsnprintf(message, format, args); vsnprintf(message, ret, format, args);
va_end(args); va_end(args);
} }
gpr_log_message(file, line, severity, message); gpr_log_message(file, line, severity, message);

Loading…
Cancel
Save