diff options
author | Fredrik Gustafsson <[email protected]> | 2013-06-04 14:41:11 +0200 |
---|---|---|
committer | Fredrik Gustafsson <[email protected]> | 2013-06-04 14:41:11 +0200 |
commit | 57b24ccd49fc005d685aeebd363531a8ed86e6bc (patch) | |
tree | cccfa608d4aa543a60151352fbdbec01760b2c42 /erts | |
parent | e83fd8f94aba352b6cc055d2b4cfff007911b6d4 (diff) | |
parent | 66c5325d80aaee54bda10ff0ebb4c79a4fea24d0 (diff) | |
download | otp-57b24ccd49fc005d685aeebd363531a8ed86e6bc.tar.gz otp-57b24ccd49fc005d685aeebd363531a8ed86e6bc.tar.bz2 otp-57b24ccd49fc005d685aeebd363531a8ed86e6bc.zip |
Merge branch 'maint'
Conflicts:
bootstrap/lib/stdlib/ebin/erl_pp.beam
Diffstat (limited to 'erts')
-rw-r--r-- | erts/emulator/drivers/common/efile_drv.c | 4 | ||||
-rw-r--r-- | erts/test/z_SUITE.erl | 9 |
2 files changed, 9 insertions, 4 deletions
diff --git a/erts/emulator/drivers/common/efile_drv.c b/erts/emulator/drivers/common/efile_drv.c index 6cc1295973..595b0488a8 100644 --- a/erts/emulator/drivers/common/efile_drv.c +++ b/erts/emulator/drivers/common/efile_drv.c @@ -1679,10 +1679,10 @@ static void invoke_pwritev(void *data) { d->again = 0; } } else - ASSERT(written == FILE_SEGMENT_WRITE); + ASSERT(written >= FILE_SEGMENT_WRITE); MUTEX_LOCK(d->c.writev.q_mtx); - driver_deq(d->c.pwritev.port, size); + driver_deq(d->c.pwritev.port, written); MUTEX_UNLOCK(d->c.writev.q_mtx); done: EF_FREE(iov); /* Free our copy of the vector, nothing to restore */ diff --git a/erts/test/z_SUITE.erl b/erts/test/z_SUITE.erl index 78968ed405..9abc73c081 100644 --- a/erts/test/z_SUITE.erl +++ b/erts/test/z_SUITE.erl @@ -190,8 +190,13 @@ file_inspect(#core_search_conf{file = File}, Core) -> probably_a_core end. -mk_readable(F) -> - catch file:write_file_info(F, #file_info{mode = 8#00444}). +mk_readable(F) -> + try + {ok, Old} = file:read_file_info(F), + file:write_file_info(F, Old#file_info{mode = 8#00444}) + catch + _:_ -> io:format("Failed to \"chmod\" core file ~p\n", [F]) + end. ignore_core(C) -> filelib:is_regular(filename:join([filename:dirname(C), |