Backport official GLib iterator safety fix for Linux desktop
This commit is contained in:
1 parent
43c43ebdc9
commit
8ef874c609
133 files changed
+55342
-2
No files matched your search
@@ -0,0 +1,28 @@
|
||||
# Optimized GLib backport regression
|
||||
|
||||
Run on native Linux with the GLib development headers and the normal Rust
|
||||
toolchain. This isolated harness selects searchi's exact vendored GLib crate.
|
||||
|
||||
Before building, verify all upstream bytes and the exact patch against the
|
||||
official crate archive already available in the Cargo download cache:
|
||||
|
||||
```sh
|
||||
python tools/glib-regression/verify_vendor.py /path/to/glib-0.18.5.crate
|
||||
```
|
||||
|
||||
This reads the archive without extracting it or changing the Cargo cache and
|
||||
rejects extra, missing or unexpectedly changed vendor files.
|
||||
|
||||
```sh
|
||||
cargo test --manifest-path tools/glib-regression/Cargo.toml --release --locked --jobs 1
|
||||
```
|
||||
|
||||
The release profile is essential: the upstream defect was sensitive to compiler
|
||||
optimization. Tests exercise all five affected iterator operations, Unicode,
|
||||
empty arrays, exhaustion and exact-size behavior. A compile-fail doctest verifies
|
||||
borrowed strings cannot outlive their owning variant. No embeddings, media
|
||||
decoders, network inference or GPU providers are used.
|
||||
|
||||
This harness does not replace a native desktop build/interaction check or an
|
||||
advisory audit. Record actual execution and selected package identity before
|
||||
calling the local backport validated.
|
||||
Reference in new issue
Block a user