chore(lints): preserve behavior in workspace clippy cleanup

- Move conditional no-op match arms into guards

- Preserve renderer predicate order with De Morgan's law

- Strict clippy, fmt, layers, assets and WASM pass on Rust 1.95

- Clean engine runs match main: 379 pass, 10 fail, 3 ignored

- Full CI is not green; upstream baseline failures remain
This commit is contained in:
WavJaby committed 2026-10-08 18:22:27 +08:00
1 parent 61238bf8fc
commit 92c6aa2b63
6 files changed
+13 -22

No files matched your search

+4 -4
View File
@@ -553,10 +553,10 @@ impl Session {
let Some(p) = self.persistence.as_mut() else { return };
for ev in p.drain_events() {
match ev {
autosave::WorkerEvent::SavedProject { path, revision } => {
if self.path.as_deref() == Some(path.as_str()) && revision > self.saved_revision && revision <= self.revision {
self.saved_revision = revision;
}
autosave::WorkerEvent::SavedProject { path, revision }
if self.path.as_deref() == Some(path.as_str()) && revision > self.saved_revision && revision <= self.revision =>
{
self.saved_revision = revision;
}
autosave::WorkerEvent::Error(m) => {
self.log.push(panels::Level::Error, "autosave", m.clone());
+2 -4
View File
@@ -1084,10 +1084,8 @@ pub fn sanitize(v: &mut Value, defaults: &Value) {
let Some(slot) = path.iter().try_fold(&mut *v, |v, k| v.get_mut(*k)) else { continue };
let def = path.iter().try_fold(defaults, |v, k| v.get(*k)).cloned().unwrap_or(Value::Null);
match f.kind {
Kind::Choice(_) | Kind::Color => {
if validate(f.key, slot).is_err() {
*slot = def;
}
Kind::Choice(_) | Kind::Color if validate(f.key, slot).is_err() => {
*slot = def;
}
Kind::Int { min, max, .. } => match slot.as_f64().filter(|x| x.is_finite()) {
Some(x) => *slot = json!(x.round().clamp(min, max) as u64),
+2 -4
View File
@@ -1505,10 +1505,8 @@ impl SampleEntry {
CodecConfig::Aac(c) => {
b.leaf(b"esds", &esds_payload(0x40, &c.asc, c.max_bitrate, c.avg_bitrate, c.buffer_size));
}
CodecConfig::Mp3 => {
if format == *b"mp4a" {
b.leaf(b"esds", &esds_payload(0x6B, &[], 0, 0, 0));
}
CodecConfig::Mp3 if format == *b"mp4a" => {
b.leaf(b"esds", &esds_payload(0x6B, &[], 0, 0, 0));
}
CodecConfig::Alac { cookie } => {
let m = b.start_full(b"alac", 0, 0);
+2 -4
View File
@@ -713,10 +713,8 @@ impl Walker<'_> {
match h.id {
SEEK_HEAD => file.seek_head.extend(parse_seekhead(&data)),
INFO => file.info = parse_info(&data),
TRACKS => {
if file.tracks.is_empty() {
file.tracks = parse_tracks(&data, file.info.timestamp_scale);
}
TRACKS if file.tracks.is_empty() => {
file.tracks = parse_tracks(&data, file.info.timestamp_scale);
}
CUES => parse_cues(&data, &mut file.cues),
CHAPTERS => parse_chapters(&data, &mut file.chapters),
+1 -2
View File
@@ -275,8 +275,7 @@ fn push_item(
}
// Graphic clips without standard effects: the layers are rasterised (cached) into one tight
// image the GPU places as a layer.
if !(opts.effects && item.has_standard_effects())
&& !item.has_opacity_masks()
if !(opts.effects && item.has_standard_effects() || item.has_opacity_masks())
&& project.item(item.item).is_some_and(|p| matches!(p.kind, ItemKind::Graphic { .. }))
{
let Some(size) = crate::source_size(project, item.item) else { return };
+2 -4
View File
@@ -593,10 +593,8 @@ pub fn show(app: &mut FilmcraftApp, ctx: &egui::Context) {
fn finish(d: &ClipDialogDraft) -> Value {
let mut p = d.params.clone();
match d.command.as_str() {
"file.newOfflineFile" => {
if p["name"].as_str().is_some_and(str::is_empty) {
p.as_object_mut().map(|m| m.remove("name"));
}
"file.newOfflineFile" if p["name"].as_str().is_some_and(str::is_empty) => {
p.as_object_mut().map(|m| m.remove("name"));
}
"clip.modifyTimecode" if p["reset"].as_bool() == Some(true) => {
p.as_object_mut().map(|m| m.remove("timecode"));