Skip to content

asynctest: dispose a finished write and submit the next one inside its notify - #39

Merged
EdmondDantes merged 1 commit into
true-asyncfrom
asynctest-write-resubmit
Oct 1, 2026
Merged

EdmondDantes merged 1 commit into
true-asyncfrom
asynctest-write-resubmit

Conversation

@EdmondDantes

Copy link
Copy Markdown

A cmocka case for true-async/php-async#310: a listener on a pipe handle disposes the finished write request inside the completion notify and submits the next write there, as true-async-server's log sink does. The next request is allocated at the address just freed; the case checks that both writes complete and both payloads reach the peer. It skips itself when the allocator does not reuse the address, since the defect then has nothing to corrupt.

Evidence: SIGSEGV 3 of 3 against php-async ef85610; passes 3 of 3, not skipped, with true-async/php-async#311. Merge after php#311, or php-async's CI goes red on it.

@EdmondDantes
EdmondDantes merged commit 863f6dd into true-async Oct 1, 2026
9 of 17 checks passed
@EdmondDantes
EdmondDantes deleted the asynctest-write-resubmit branch October 1, 2026 09:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant