Sentinel hotfix: Log Message #3

Merged
epistemophiliac merged 1 commit from sentinel/hotfix-6d93f09a into main 2026-07-24 02:24:18 +00:00

Summary

Automated Sentinel hotfix for BugSink project AexoLoader.

Issues

  • 6d93f09a-175a-49f7-a511-bb312e6af52a

Agent notes

Summary

Issue: 6d93f09aQuantumSpriteGuard Apply soft-fail: IL Compile Error (unknown location)

Cause: Harmony finalizer on QuantumSpriteLibrary.drawProjectiles clashes with that method’s foreach finally. MonoMod then fails with IL Compile Error, so Apply soft-fails and BugSink records the warn.

Change: src/Compat/QuantumSpriteGuard.cs

  • Dropped the finalizer.
  • Transpiler swaps static frames[0] for SafeFirstFrame (null/empty-safe).
  • Kept prefix on AnimationHelper.getSpriteFromList for the animated empty-list path.
  • Patches are applied in separate try/catch blocks so one failure does not abort the other.

Risk: Low. Transpiler only matches ldfld frames + ldc.i4.0 + ldelem.ref. If the game IL changes, a local warn is logged and the static path stays unguarded; animated guard still applies.

Verify: Boot with projectile mods that previously empty-framed; confirm log shows patched 2 method(s) and no IL Compile Error / Apply soft-fail.

Notes

  • Do not auto-resolve BugSink from this PR — manage in BugSink UI.
  • Version / release bumps are not part of Sentinel PRs — maintainer cuts releases.
  • Agent: agent-3f39032d-093c-4044-9a99-dfe4f25c87cf run: run-4f67ac88-192c-4fb5-b32c-fc80be0f9836
## Summary Automated Sentinel hotfix for BugSink project `AexoLoader`. ### Issues - `6d93f09a-175a-49f7-a511-bb312e6af52a` ### Agent notes ## Summary **Issue:** `6d93f09a` — `QuantumSpriteGuard Apply soft-fail: IL Compile Error (unknown location)` **Cause:** Harmony **finalizer** on `QuantumSpriteLibrary.drawProjectiles` clashes with that method’s foreach `finally`. MonoMod then fails with `IL Compile Error`, so `Apply` soft-fails and BugSink records the warn. **Change:** `src/Compat/QuantumSpriteGuard.cs` - Dropped the finalizer. - **Transpiler** swaps static `frames[0]` for `SafeFirstFrame` (null/empty-safe). - Kept **prefix** on `AnimationHelper.getSpriteFromList` for the animated empty-list path. - Patches are applied in separate try/catch blocks so one failure does not abort the other. **Risk:** Low. Transpiler only matches `ldfld frames` + `ldc.i4.0` + `ldelem.ref`. If the game IL changes, a local warn is logged and the static path stays unguarded; animated guard still applies. **Verify:** Boot with projectile mods that previously empty-framed; confirm log shows `patched 2 method(s)` and no `IL Compile Error` / `Apply soft-fail`. ### Notes - Do **not** auto-resolve BugSink from this PR — manage in BugSink UI. - Version / release bumps are **not** part of Sentinel PRs — maintainer cuts releases. - Agent: `agent-3f39032d-093c-4044-9a99-dfe4f25c87cf` run: `run-4f67ac88-192c-4fb5-b32c-fc80be0f9836`
Sentinel hotfix for BugSink 6d93f09a
Some checks failed
AexoLoader/pipeline/head There was a failure building this commit
c4289bf0f4
## Summary

**Issue:** `6d93f09a` — `QuantumSpriteGuard Apply soft-fail: IL Compile Error (unknown location)`

**Cause:** Harmony **finalizer** on `QuantumSpriteLibrary.drawProjectiles` clashes with that method’s foreach `finally`. MonoMod then fails with `IL Compile Error`, so `Apply` soft-fails and BugSink records the warn.

**Change:** `src/Compat/QuantumSpriteGuard.cs`
- Dropped the finalizer.
- **Transpiler** swaps static `frames[0]` for `SafeFirstFrame` (null/empty-safe).
- Kept **prefix**
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
epistemophiliac/worldboxmodmanager!3
No description provided.