Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upLinux: Don't pass uninitialised memory as pointers to libc::connect() #27
Conversation
I don't know whether there are constellations where taking a reference to a binding containing mem::uninitialized() actually creates a proper NULL pointer -- but it certainly doesn't on my system when using the rustc snapshot from Servo. Either way, creating explicit NULL pointers seems way more correct. This fixes the other four testsuite failures, as well as servo -M
|
What testsuite failures are you referring to? |
|
All the tests using IpcOneShotServer are failing on my system without this fix -- including platform::test::server, platform::test::cross_process, platform::test::cross_process_sender_transfer, and test::cross_process_embedded_senders. (And servo -m accordingly also panics on IpcOneShotServer.) |
|
Would be nice if we could test this in automation. This looks correct from the manpage, though. @bors-servo r+ |
|
|
Linux: Don't pass uninitialised memory as pointers to libc::connect() I don't know whether there are constellations where taking a reference to a binding containing mem::uninitialized() actually creates a proper NULL pointer -- but it certainly doesn't on my system when using the rustc snapshot from Servo. Either way, creating explicit NULL pointers seems way more correct. This fixes the other four testsuite failures, as well as servo -M
|
|
|
And that's rust-lang/rust#30713 |
|
@bors-servo retry |
Linux: Don't pass uninitialised memory as pointers to libc::connect() I don't know whether there are constellations where taking a reference to a binding containing mem::uninitialized() actually creates a proper NULL pointer -- but it certainly doesn't on my system when using the rustc snapshot from Servo. Either way, creating explicit NULL pointers seems way more correct. This fixes the other four testsuite failures, as well as servo -M
|
|
|
Heh, now aster/quasi_codegen is broken, great |
|
@bors-servo: retry (serde-deprecated/quasi#29) |
Linux: Don't pass uninitialised memory as pointers to libc::connect() I don't know whether there are constellations where taking a reference to a binding containing mem::uninitialized() actually creates a proper NULL pointer -- but it certainly doesn't on my system when using the rustc snapshot from Servo. Either way, creating explicit NULL pointers seems way more correct. This fixes the other four testsuite failures, as well as servo -M
|
|
|
Dang it, not published yet |
|
@bors-servo retry |
Linux: Don't pass uninitialised memory as pointers to libc::connect() I don't know whether there are constellations where taking a reference to a binding containing mem::uninitialized() actually creates a proper NULL pointer -- but it certainly doesn't on my system when using the rustc snapshot from Servo. Either way, creating explicit NULL pointers seems way more correct. This fixes the other four testsuite failures, as well as servo -M
|
|
|
\o/ |
This pulls in servo/ipc-channel#25 and servo/ipc-channel#27, thus fixing fallout from the multiprocess split, and making Servo work on my system again. (It also pulls in servo/ipc-channel#12 -- I guess that's fine?)
cargo-update ipc-channel to get important fixes This pulls in servo/ipc-channel#25 and servo/ipc-channel#27, thus fixing fallout from the multiprocess split, and making Servo work on my system again. (It also pulls in servo/ipc-channel#12 -- I guess that's fine?) <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9299) <!-- Reviewable:end -->
cargo-update ipc-channel to get important fixes This pulls in servo/ipc-channel#25 and servo/ipc-channel#27, thus fixing fallout from the multiprocess split, and making Servo work on my system again. (It also pulls in servo/ipc-channel#12 -- I guess that's fine?) <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9299) <!-- Reviewable:end -->
…(from antrik:update-ipc_channel); r=pcwalton This pulls in servo/ipc-channel#25 and servo/ipc-channel#27, thus fixing fallout from the multiprocess split, and making Servo work on my system again. (It also pulls in servo/ipc-channel#12 -- I guess that's fine?) Source-Repo: https://github.com/servo/servo Source-Revision: 42372dbdf112c1c2967c4487401b28e7305c2993 UltraBlame original commit: d16cecf007bc7760538afc4ec593b1d6580648f2
…(from antrik:update-ipc_channel); r=pcwalton This pulls in servo/ipc-channel#25 and servo/ipc-channel#27, thus fixing fallout from the multiprocess split, and making Servo work on my system again. (It also pulls in servo/ipc-channel#12 -- I guess that's fine?) Source-Repo: https://github.com/servo/servo Source-Revision: 42372dbdf112c1c2967c4487401b28e7305c2993 UltraBlame original commit: d16cecf007bc7760538afc4ec593b1d6580648f2
…(from antrik:update-ipc_channel); r=pcwalton This pulls in servo/ipc-channel#25 and servo/ipc-channel#27, thus fixing fallout from the multiprocess split, and making Servo work on my system again. (It also pulls in servo/ipc-channel#12 -- I guess that's fine?) Source-Repo: https://github.com/servo/servo Source-Revision: 42372dbdf112c1c2967c4487401b28e7305c2993 UltraBlame original commit: d16cecf007bc7760538afc4ec593b1d6580648f2
antrik commentedJan 8, 2016
I don't know whether there are constellations where taking a reference
to a binding containing mem::uninitialized() actually creates a proper
NULL pointer -- but it certainly doesn't on my system when using the
rustc snapshot from Servo.
Either way, creating explicit NULL pointers seems way more correct.
This fixes the other four testsuite failures, as well as servo -M