buffer: switch to memmap2, destroy shm pools, never underflow refcounts
memmap 0.7 is unmaintained (RUSTSEC-2020-0077); memmap2 is a drop-in replacement. Drop the unused shlex dependency. Each resize created a new wl_shm_pool that was never destroyed; keep the pool on the buffer and destroy it with it. A wl_buffer.release for a buffer we didn't consider acquired used to underflow refcnt and wedge rendering. Fix the lifetime-elision warnings while here. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
c033335912
commit
6af81b587c
Generated
+1
-18
@@ -462,16 +462,6 @@ version = "2.7.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
|
||||
|
||||
[[package]]
|
||||
name = "memmap"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "memmap2"
|
||||
version = "0.9.5"
|
||||
@@ -809,12 +799,6 @@ dependencies = [
|
||||
"digest",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "shlex"
|
||||
version = "1.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
|
||||
|
||||
[[package]]
|
||||
name = "simd-json"
|
||||
version = "0.13.8"
|
||||
@@ -1289,13 +1273,12 @@ dependencies = [
|
||||
"fontconfig",
|
||||
"fuzzy-matcher",
|
||||
"libpulse-binding",
|
||||
"memmap",
|
||||
"memmap2",
|
||||
"nix 0.26.4",
|
||||
"rcalc_lib",
|
||||
"rusttype",
|
||||
"serde",
|
||||
"serde_yaml",
|
||||
"shlex",
|
||||
"simd-json",
|
||||
"unicode-segmentation",
|
||||
"walkdir",
|
||||
|
||||
Reference in New Issue
Block a user