diff --git a/docs/NEWS.md b/docs/NEWS.md index 8e8961d..85067d0 100644 --- a/docs/NEWS.md +++ b/docs/NEWS.md @@ -1,6 +1,8 @@ ### UNRELEASED + * *fix:* correct failure to report file positions in **--watchfd** ([#118](https://codeberg.org/a-j-wood/pv/issues/118)) * *i18n:* Russian translations added + * *cleanup:* test added for **--watchfd PID:FD** ### 1.9.0 - 15 October 2024 diff --git a/src/pv/loop.c b/src/pv/loop.c index 0a58870..cb454d1 100644 --- a/src/pv/loop.c +++ b/src/pv/loop.c @@ -649,6 +649,7 @@ int pv_watchfd_loop(pvstate_t state) state->display.initial_offset = position_now; first_check = false; } + state->transfer.transferred = position_now; state->transfer.total_written = position_now; } @@ -955,6 +956,7 @@ int pv_watchpid_loop(pvstate_t state) } if (NULL != info_array[idx].state) { + info_array[idx].state->transfer.transferred = position_now; info_array[idx].state->transfer.total_written = position_now; pv_display(info_array[idx].state, false); displayed_lines++; diff --git a/src/pv/watchpid.c b/src/pv/watchpid.c index 63ca89d..ca03e2f 100644 --- a/src/pv/watchpid.c +++ b/src/pv/watchpid.c @@ -281,6 +281,13 @@ off_t pv_watchfd_position(pvwatchfd_t info) (void) fclose(fptr); #endif + /* + * This debugging line can be quite noisy - turned off for now, + * uncomment if needed. + * + * debug("pid:%d fd:%d position:%lld", (int) (info->watch_pid), info->watch_fd, position); + */ + return position; }