|
|
@ -40,6 +40,7 @@ |
|
|
|
#include <grpc/support/log.h> |
|
|
|
#include <grpc/support/log.h> |
|
|
|
#include <grpc/support/string_util.h> |
|
|
|
#include <grpc/support/string_util.h> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include "src/core/iomgr/block_annotate.h" |
|
|
|
#include "src/core/support/string.h" |
|
|
|
#include "src/core/support/string.h" |
|
|
|
|
|
|
|
|
|
|
|
gpr_slice gpr_load_file(const char *filename, int add_null_terminator, |
|
|
|
gpr_slice gpr_load_file(const char *filename, int add_null_terminator, |
|
|
@ -48,9 +49,11 @@ gpr_slice gpr_load_file(const char *filename, int add_null_terminator, |
|
|
|
size_t contents_size = 0; |
|
|
|
size_t contents_size = 0; |
|
|
|
char *error_msg = NULL; |
|
|
|
char *error_msg = NULL; |
|
|
|
gpr_slice result = gpr_empty_slice(); |
|
|
|
gpr_slice result = gpr_empty_slice(); |
|
|
|
FILE *file = fopen(filename, "rb"); |
|
|
|
FILE *file; |
|
|
|
size_t bytes_read = 0; |
|
|
|
size_t bytes_read = 0; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GRPC_IOMGR_START_BLOCKING_REGION; |
|
|
|
|
|
|
|
file = fopen(filename, "rb"); |
|
|
|
if (file == NULL) { |
|
|
|
if (file == NULL) { |
|
|
|
gpr_asprintf(&error_msg, "Could not open file %s (error = %s).", filename, |
|
|
|
gpr_asprintf(&error_msg, "Could not open file %s (error = %s).", filename, |
|
|
|
strerror(errno)); |
|
|
|
strerror(errno)); |
|
|
@ -83,5 +86,6 @@ end: |
|
|
|
if (success != NULL) *success = 0; |
|
|
|
if (success != NULL) *success = 0; |
|
|
|
} |
|
|
|
} |
|
|
|
if (file != NULL) fclose(file); |
|
|
|
if (file != NULL) fclose(file); |
|
|
|
|
|
|
|
GRPC_IOMGR_END_BLOCKING_REGION; |
|
|
|
return result; |
|
|
|
return result; |
|
|
|
} |
|
|
|
} |
|
|
|