From Yu Fang to ~alextee/zrythm-devel
The original implementation seems to be misguided by the naming of
barrier macros. The barrier before read pointer increment should be a
release fence instead of an acquire fence,
- ZIX_READ_BARRIER();
+ ZIX_WRITE_BARRIER();
ring->read_head = (r + size) & ring->size_mask;
or otherwise the fence cannot prevent store-store reordering [1], i.e.
stores happens before pointer increment might be visible after the
increment to the other thread. I also added the missing acquire fences
when loading pointer from other thread.
I don't think this bug would lead to a major problem, since it only
[message trimmed]
From kst to ~sircmpwn/public-inbox
This should fix the inconsistent spacing issue mentioned in [1]. I also fixed a spacing in issue in the man page. [1]: https://lists.sr.ht/~sircmpwn/public-inbox/%3CC4VKFSIFINOA.X6VCIU2AV88M%40szk%3E --- scdoc.5.scd | 2 +- src/main.c | 9 ++++++++- test/line-breaks | 9 +++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/scdoc.5.scd b/scdoc.5.scd index f4d393b..b548b81 100644 --- a/scdoc.5.scd +++ b/scdoc.5.scd [message trimmed]
From k.st to ~sircmpwn/public-inbox
As a follow-up to the second solution, Pandoc uses '\ ' to escape sentence spaces in markdown, similar to TeX, and maintains an abbreviation list for common abbreviations. The drawback of this approach is that it adds some noise to the source file. Both approaches should be fairly easy to implement. I could send a patch after some inputs.
From k.st to ~sircmpwn/public-inbox
Hi Drew, There is a subtle bug in the man pages produces by scdoc. This afffects the man pages of aerc, wayland, and any other projects that depend on it. roff's syntax has a peculiar requirement. It *enforces* semantic line-breaks [1]. For example, this is incorrect: This is a sentence. This is another sentence. We have to insert a line-break after each sentence: