Skip to content

Rust 1.78以降でコンパイルした場合、B25デコード処理でpanicとなる #118

@masato-yoshi-dnsalias-com

Description

Rustの仕様変更により、「ptr::copy_nonoverlapping」の引数にnullが許容されなくなったため。B-CASカードからのget処理で
データが取得できなかったケースで(put直後のgetではデータが返ってこない)エラーとなる。

'./target/debug/recisdb tune --device /dev/pt3video2 --channel T18 /tmp/aaa
[2024-08-17T12:57:09Z INFO recisdb::utils] recisdb version 1.2.1
[2024-08-17T12:57:09Z INFO recisdb::commands] Tuner: /dev/pt3video2
[2024-08-17T12:57:09Z INFO recisdb::commands] Channel: T18 / Terrestrial: 18
[2024-08-17T12:57:09Z INFO recisdb::commands] Recording duration: Infinite
ch.ch_type = Terrestrial(18, AsIs)
ioctl_channel=68, slot=0
[2024-08-17T12:57:10Z INFO recisdb::commands] Decode: Enabled
libaribb25: detected card reader name:
NTT Communications Corp. SCR3310-NTTCom USB SmartCard Reader [Vendor Interface] 00 00
libaribb25: connected card reader name:
NTT Communications Corp. SCR3310-NTTCom USB SmartCard Reader [Vendor Interface] 00 00
[2024-08-17T12:57:10Z INFO recisdb::commands] Recording...
thread 'main' panicked at library/core/src/panicking.rs:219:5:
unsafe precondition(s) violated: ptr::copy_nonoverlapping requires that both pointer arguments are aligned and non-null and the specified memory ranges do not overlap
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
thread caused non-unwinding panic. aborting.
Aborted`

#sequenceplanner/r2r#96

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions