LaihoE / demoparser

Counter-Strike 2 replay parser for Python and JavaScript
MIT License
290 stars 30 forks source link

[node binding] parseTicks() structOfArrays = true causes panic #128

Closed calezz closed 2 months ago

calezz commented 7 months ago

When you opt in for structOfArrays in parseTicks the parser panics (node JS binding) for example parseTicks(pathToDemo,data,[449,500]); <- works parseTicks(pathToDemo,data,[449,500],true); <- panic

console message: thread '' panicked at D:\a\demoparser-node-bindings\demoparser-node-bindings\demoparser\src\parser\src\variants.rs:558:29: failed to serialize data stack backtrace: 0: 0x7ffad6a84395 - napi_register_module_v1 1: 0x7ffad68f795d - 2: 0x7ffad6a7ca31 - napi_register_module_v1 3: 0x7ffad6a8607a - napi_register_module_v1 4: 0x7ffad6a859ba - napi_register_module_v1 5: 0x7ffad6a86792 - napi_register_module_v1 6: 0x7ffad6a8626b - napi_register_module_v1 7: 0x7ffad6a861e9 - napi_register_module_v1 8: 0x7ffad6a861d4 - napi_register_module_v1 9: 0x7ffad6a88317 - napi_register_module_v1 10: 0x7ffad690f735 - 11: 0x7ffad68bf48b - 12: 0x7ff7aa00bb5f - v8::internal::CpuProfilesCollection::profiles 13: 0x7ff7aaa274fd - v8::internal::Builtins::code 14: 0x7ff7aaa27109 - v8::internal::Builtins::code 15: 0x7ff7aaa273cc - v8::internal::Builtins::code 16: 0x7ff7aaa27230 - v8::internal::Builtins::code 17: 0x7ff7aab0bf71 - v8::internal::SetupIsolateDelegate::SetupHeap 18: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 19: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 20: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 21: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 22: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 23: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 24: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 25: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 26: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 27: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 28: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 29: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 30: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 31: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 32: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 33: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 34: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 35: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 36: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 37: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 38: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 39: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 40: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 41: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 42: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 43: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 44: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 45: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 46: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 47: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 48: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 49: 0x7ff72acb84db - 50: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 51: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 52: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 53: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 54: 0x7ff7aaa8f884 - v8::internal::SetupIsolateDelegate::SetupHeap 55: 0x7ff7aaa8de90 - v8::internal::SetupIsolateDelegate::SetupHeap 56: 0x7ff7aaa8da8b - v8::internal::SetupIsolateDelegate::SetupHeap 57: 0x7ff7aa9583c2 - v8::internal::Execution::CallWasm 58: 0x7ff7aa957bef - v8::internal::Execution::Call 59: 0x7ff7aaa504c2 - v8::Function::Call 60: 0x7ff7aa06fb20 - node::CallbackScope::~CallbackScope 61: 0x7ff7aa067eb8 - v8::internal::compiler::Operator::EffectOutputCount 62: 0x7ff7a9e2976e - v8::CFunctionInfo::HasOptions 63: 0x7ff7a9fbeb29 - DSA_meth_get_flags 64: 0x7ff7a9fbb641 - DSA_meth_get_flags 65: 0x7ff7a9fb1b18 - v8::base::CPU::has_fpu 66: 0x7ff7a9fc0d15 - DSA_meth_get_flags 67: 0x7ff7aa0a05c7 - uv_timer_stop 68: 0x7ff7aa09ca3b - uv_update_time 69: 0x7ff7aa09c582 - uv_run 70: 0x7ff7aa06ef25 - node::SpinEventLoop 71: 0x7ff7a9f7d1b8 - v8::internal::interpreter::BytecodeArrayWriter::constant_array_builder 72: 0x7ff7aa0022e2 - node::InitializeOncePerProcess 73: 0x7ff7aa003b13 - node::Start 74: 0x7ff7a9e07f2c - AES_cbc_encrypt 75: 0x7ff7ab0840a8 - inflateValidate 76: 0x7ffb10c57344 - BaseThreadInitThunk 77: 0x7ffb128426b1 - RtlUserThreadStart

LaihoE commented 7 months ago

I'm currently trying to fix this exact thing to not cause panics rather something catch-able, that being said I don't know why this could be happening. Do you mind sharing the demo?

calezz commented 7 months ago

I'm currently trying to fix this exact thing to not cause panics rather something catch-able, that being said I don't know why this could be happening. Do you mind sharing the demo?

this is the demo i was using https://drive.google.com/file/d/14gtl0PAo55oTg1NMRVomswZAcjTrxZ2c/view?usp=sharing

LaihoE commented 2 months ago

should be fixed https://github.com/LaihoE/demoparser/pull/199 😅