Make dump file writing replaceable in test
This commit is contained in:
parent
21e44c45d9
commit
7455813e57
@ -96,6 +96,8 @@ size_t prof_tdata_count(void);
|
||||
size_t prof_bt_count(void);
|
||||
typedef int (prof_dump_open_file_t)(const char *, int);
|
||||
extern prof_dump_open_file_t *JET_MUTABLE prof_dump_open_file;
|
||||
typedef ssize_t (prof_dump_write_file_t)(int, const void *, size_t);
|
||||
extern prof_dump_write_file_t *JET_MUTABLE prof_dump_write_file;
|
||||
typedef bool (prof_dump_header_t)(tsdn_t *, bool, const prof_cnt_t *);
|
||||
extern prof_dump_header_t *JET_MUTABLE prof_dump_header;
|
||||
typedef int (prof_dump_open_maps_t)();
|
||||
|
@ -488,6 +488,8 @@ prof_dump_open(bool propagate_err, const char *filename) {
|
||||
return fd;
|
||||
}
|
||||
|
||||
prof_dump_write_file_t *JET_MUTABLE prof_dump_write_file = malloc_write_fd;
|
||||
|
||||
static bool
|
||||
prof_dump_flush(bool propagate_err) {
|
||||
bool ret = false;
|
||||
@ -495,10 +497,11 @@ prof_dump_flush(bool propagate_err) {
|
||||
|
||||
cassert(config_prof);
|
||||
|
||||
err = malloc_write_fd(prof_dump_fd, prof_dump_buf, prof_dump_buf_end);
|
||||
err = prof_dump_write_file(prof_dump_fd, prof_dump_buf,
|
||||
prof_dump_buf_end);
|
||||
if (err == -1) {
|
||||
if (!propagate_err) {
|
||||
malloc_write("<jemalloc>: write() failed during heap "
|
||||
malloc_write("<jemalloc>: failed to write during heap "
|
||||
"profile flush\n");
|
||||
if (opt_abort) {
|
||||
abort();
|
||||
|
Loading…
Reference in New Issue
Block a user