Commit Graph
4 Commits
Author SHA1 Message Date
DanS b780587d26 Fix change detection: handle empty memo correctly
Rust / Build on macOS-latest (push) Has been cancelled
Rust / Build on ubuntu-16.04 (push) Has been cancelled
Rust / Build on windows-latest (push) Has been cancelled
Rust / Linux ARMv7 (push) Has been cancelled
Rust / Linux ARM64 (push) Has been cancelled
Rust / Build on ubuntu-latest (push) Has been cancelled
memo.to_utf8() returns Some(Ok("")) for change outputs with all-zero
bytes, not None. The previous check (memo.to_utf8().is_none()) never
filtered change outputs because 0x00 < 0xF5 makes to_utf8() treat it
as valid text. Now properly checks for empty string as well.
2026-03-22 10:30:04 -05:00
DanS ae059a7238 Fix change output detection using IVK instead of static address list
Rust / Build on macOS-latest (push) Has been cancelled
Rust / Build on ubuntu-16.04 (push) Has been cancelled
Rust / Build on windows-latest (push) Has been cancelled
Rust / Linux ARMv7 (push) Has been cancelled
Rust / Linux ARM64 (push) Has been cancelled
Rust / Build on ubuntu-latest (push) Has been cancelled
- Use try_sapling_note_decryption with IVKs to detect wallet-owned outputs
- Correctly identifies change sent to diversified addresses
- Prevents change outputs from appearing as external recipients in tx history
2026-03-22 09:14:08 -05:00
DanS 43966f6aae Add clean shutdown, atomic wallet save, and backup recovery
Rust / Build on macOS-latest (push) Has been cancelled
Rust / Build on ubuntu-16.04 (push) Has been cancelled
Rust / Build on windows-latest (push) Has been cancelled
Rust / Linux ARMv7 (push) Has been cancelled
Rust / Linux ARM64 (push) Has been cancelled
Rust / Build on ubuntu-latest (push) Has been cancelled
- Add shutdown_flag (AtomicBool) to LightClient for clean thread termination
- Mempool monitor threads check shutdown flag and exit gracefully
- Add pub fn shutdown() method to set the flag
- Atomic wallet save: write to .dat.tmp then rename, preventing corruption on crash
- Create .dat.bak backup before each save
- Auto-recovery on startup: if wallet file missing/corrupted, restore from .bak
2026-03-21 05:38:57 -05:00
DanS a6a80dc224 Crash fixes, reorg handling, and sync performance improvements
Rust / Build on macOS-latest (push) Has been cancelled
Rust / Build on ubuntu-16.04 (push) Has been cancelled
Rust / Build on windows-latest (push) Has been cancelled
Rust / Linux ARMv7 (push) Has been cancelled
Rust / Linux ARM64 (push) Has been cancelled
Rust / Build on ubuntu-latest (push) Has been cancelled
- Fix FFI panics with catch_unwind and safe CString construction
- Handle poisoned mutex/RwLock after prior panics instead of crashing
- Fix empty block list panics in clear_blocks and invalidate_block
- Reuse Tokio runtime across block fetch batches to reduce overhead
- Add fetch_blocks_with_runtime for caller-managed runtime lifecycle
- Update branding, dependencies, and checkpoints for DragonX
2026-03-21 03:55:18 -05:00