Pilfer / hermes_rs

Hermes bytecode disassembler and assembler
23 stars 1 forks source link

Could not decode u32: Error { kind: UnexpectedEof, message: "failed to fill whole buffer" } #5

Open Dreaming-Codes opened 3 days ago

Dreaming-Codes commented 3 days ago

Hi, I'm getting the following crash when trying to use your library

thread 'main' panicked at /home/dreamingcodes/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hermes_rs-0.1.4/src/hermes/decode.rs:41:28:
Could not decode u32: Error { kind: UnexpectedEof, message: "failed to fill whole buffer" }
stack backtrace:
   0:     0x586ec8f11b6a - std::backtrace_rs::backtrace::libunwind::trace::h99efb0985cae5d78
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
   1:     0x586ec8f11b6a - std::backtrace_rs::backtrace::trace_unsynchronized::he2c1aa63b3f7fad8
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x586ec8f11b6a - std::sys::backtrace::_print_fmt::h8a221d40f5e0f88b
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:66:9
   3:     0x586ec8f11b6a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h304520fd6a30aa07
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:39:26
   4:     0x586ec8f2debb - core::fmt::rt::Argument::fmt::h5da9c218ec984eaf
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/fmt/rt.rs:177:76
   5:     0x586ec8f2debb - core::fmt::write::hf5713710ce10ff22
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/fmt/mod.rs:1178:21
   6:     0x586ec8f0f7e3 - std::io::Write::write_fmt::hda708db57927dacf
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/io/mod.rs:1823:15
   7:     0x586ec8f12d12 - std::sys::backtrace::BacktraceLock::print::hbcdbec4d97c91528
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:42:9
   8:     0x586ec8f12d12 - std::panicking::default_hook::{{closure}}::he1ad87607d0c11c5
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:266:22
   9:     0x586ec8f1297e - std::panicking::default_hook::h81c8cd2e7c59ee33
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:293:9
  10:     0x586ec8f1350f - std::panicking::rust_panic_with_hook::had2118629c312a4a
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:797:13
  11:     0x586ec8f13287 - std::panicking::begin_panic_handler::{{closure}}::h7fa5985d111bafa2
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:671:13
  12:     0x586ec8f12049 - std::sys::backtrace::__rust_end_short_backtrace::h704d151dbefa09c5
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:170:18
  13:     0x586ec8f12f14 - rust_begin_unwind
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:662:5
  14:     0x586ec8edd273 - core::panicking::panic_fmt::h3eea515d05f7a35e
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/panicking.rs:74:14
  15:     0x586ec8edd6a6 - core::result::unwrap_failed::h7c8d8bbbcf45dc13
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/result.rs:1677:5
  16:     0x586ec8ee4e9f - core::result::Result<T,E>::expect::h0b8c76249281d889
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/result.rs:1059:23
  17:     0x586ec8ee6e49 - hermes_rs::hermes::decode::decode_u32::h81d17406aedddf85
                               at /home/dreamingcodes/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hermes_rs-0.1.4/src/hermes/decode.rs:41:5
  18:     0x586ec8ee9555 - <hermes_rs::hermes::cjs_module::CJSModuleEntry as hermes_rs::hermes::Serializable>::deserialize::h219beab27d335028
                               at /home/dreamingcodes/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hermes_rs-0.1.4/src/hermes/cjs_module.rs:35:21
  19:     0x586ec8ee1e9d - hermes_rs::hermes::hermes_file::reader::<impl hermes_rs::hermes::hermes_file::HermesFile<R>>::visit_cjs_module_table::hf8590866a98b5baf
                               at /home/dreamingcodes/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hermes_rs-0.1.4/src/hermes/hermes_file/reader.rs:350:25
  20:     0x586ec8ee0c0e - hermes_rs::hermes::hermes_file::reader::<impl hermes_rs::hermes::hermes_file::HermesFile<R>>::deserialize::h900b68313a7e1077
                               at /home/dreamingcodes/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hermes_rs-0.1.4/src/hermes/hermes_file/reader.rs:103:9
  21:     0x586ec8eea964 - hermesrip::main::h44c406210190a421
                               at /home/dreamingcodes/Downloads/hermesrip/src/main.rs:22:27
  22:     0x586ec8ee544b - core::ops::function::FnOnce::call_once::heb0222acbc1efd9f
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/ops/function.rs:250:5
  23:     0x586ec8eed0fe - std::sys::backtrace::__rust_begin_short_backtrace::h891cd5600baf8a19
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:154:18
  24:     0x586ec8ee4c01 - std::rt::lang_start::{{closure}}::h73c8000b43be3c0d
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:164:18
  25:     0x586ec8f0c960 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h08ecba131ab90ec4
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/ops/function.rs:284:13
  26:     0x586ec8f0c960 - std::panicking::try::do_call::hf33a59fd8ce953f4
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:554:40
  27:     0x586ec8f0c960 - std::panicking::try::h5005ce80ce949fd8
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:518:19
  28:     0x586ec8f0c960 - std::panic::catch_unwind::hfbae19e2e2c5b7ed
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panic.rs:345:14
  29:     0x586ec8f0c960 - std::rt::lang_start_internal::{{closure}}::ha0331c3690741813
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:143:48
  30:     0x586ec8f0c960 - std::panicking::try::do_call::hcdcbdb616b4d0295
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:554:40
  31:     0x586ec8f0c960 - std::panicking::try::h3f2f1725a07d2256
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:518:19
  32:     0x586ec8f0c960 - std::panic::catch_unwind::h51869e04b56b2dc3
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panic.rs:345:14
  33:     0x586ec8f0c960 - std::rt::lang_start_internal::h4d90db0530245041
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:143:20
  34:     0x586ec8ee4bda - std::rt::lang_start::h3173b3ebc0995229
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:163:17
  35:     0x586ec8eeaaae - main
  36:     0x7243f947727e - __libc_start_call_main
  37:     0x7243f9477339 - __libc_start_main_alias_2
  38:     0x586ec8eddae5 - _start
  39:                0x0 - <unknown>

can't really share the related index.android.bundle here but feel free to reach out so that I can share it privately

Pilfer commented 2 days ago

It's probably something dumb haha. I'd be happy to help over discord if you have it.

What version of Hermes is it using? You should be able to dump just the header.