The sound distributed version control system

#397 [CRASH] wrong timestamp in record

Closed on April 29, 2021
tankf33der on March 26, 2021

Latest pijul, sometimes it handles wrong input sometimes it crashes:

$ pijul init p1
$ cd p1
$ touch a
$ pijul add a
$ pijul rec -am"."
$ echo "a" >> a
$ pijul rec -am"." --timestamp 77777777777777777777
error: Invalid value for '--timestamp <timestamp>': number too large to fit in target type

For more information try --help
$ pijul rec -am"." --timestamp 77777777777777777
CRASH
$ cat /tmp/report-87ac9d82-a1d6-4db7-a565-e7c2d8380ac0.toml
name = 'pijul'
operating_system = 'unix:Manjaro'
crate_version = '1.0.0-alpha.48'
explanation = '''
Panic occurred in file '/home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/chrono-0.4.19/src/naive/datetime.rs' at line 117
'''
cause = 'invalid or out-of-range datetime'
method = 'Panic'
backtrace = '''

   0: 0x589730b051e3 - core::option::expect_failed::h094950cb816db649
                at /build/rust/src/rustc-1.50.0-src/library/core/src/option.rs:1260
   1: 0x5897305dab47 - pijul::commands::record::Record::header::h60d57a09ffb4bfe3
   2: 0x58973057d4e6 - pijul::commands::record::Record::run::{{closure}}::h2a4f24b7b8be8bf9
   3: 0x5897305a20e1 - pijul::run::{{closure}}::h8e6d704ea6bf7965
   4: 0x58973055a8fb - <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll::h4471adde082f0d37
   5: 0x58973048ef24 - tokio::runtime::thread_pool::ThreadPool::block_on::h465a6f08c08a2056
   6: 0x5897305c987e - tokio::runtime::Runtime::block_on::h4503b486b0c3fb99
   7: 0x5897304eab66 - pijul::main::hf424609c9f37d20d
   8: 0x589730458593 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4319621f6e06f545
   9: 0x5897303d9f09 - std::rt::lang_start::{{closure}}::hcab55ace80c05191
  10: 0x589730ae45f7 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h5a27e92186d531b9
                at /build/rust/src/rustc-1.50.0-src/library/core/src/ops/function.rs:259
                 - std::panicking::try::do_call::h8d3a36b2860fc4e2
                at /build/rust/src/rustc-1.50.0-src/library/std/src/panicking.rs:379
                 - std::panicking::try::hefdcf6df93f20790
                at /build/rust/src/rustc-1.50.0-src/library/std/src/panicking.rs:343
                 - std::panic::catch_unwind::h36ddc1c42bb74870
                at /build/rust/src/rustc-1.50.0-src/library/std/src/panic.rs:396
                 - std::rt::lang_start_internal::ha6cc4bb09c664b1a
                at /build/rust/src/rustc-1.50.0-src/library/std/src/rt.rs:51
  11: 0x5897304eac22 - main
  12: 0x14466cc73b25 - __libc_start_main
  13: 0x5897303bd27e - _start
  14:        0x0 - <unresolved>'''
$
pmeunier added a change on April 29, 2021
NS36CJCO6E2FS65JRHHMOK4GTL7CLNOOLQZZAAAIZI2CQYNPAYRQC
main
pmeunier on April 29, 2021

Fixed! We’re properly validating this now.

pmeunier closed this discussion on April 29, 2021