solemnwarning / rehex

Reverse Engineers' Hex Editor
https://rehex.solemnwarning.net/
GNU General Public License v2.0
2.3k stars 113 forks source link

Jump to offset causes SIGABRT #194

Closed OPNA2608 closed 1 year ago

OPNA2608 commented 1 year ago

I'm on x86_64-linux, version 0.5.4, on both my distro's package and your AppImage. Attempting to jump to any offset triggers a crash for me, no matter what I enter: 0x19, 0, etc.

GDB backtrace ``` Thread 1 "rehex" received signal SIGABRT, Aborted. 0x00007ffff550cbc7 in __pthread_kill_implementation () from /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 (gdb) bt #0 0x00007ffff550cbc7 in __pthread_kill_implementation () from /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 #1 0x00007ffff54bfb46 in raise () from /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 #2 0x00007ffff54aa4b5 in abort () from /nix/store/4nlgxhb09sdr51nc9hdm8az5b08vzkgx-glibc-2.35-163/lib/libc.so.6 #3 0x0000000000587d33 in REHex::NumericEntryDialog::GetValue (this=) at src/NumericEntryDialog.hpp:176 #4 REHex::NumericEntryDialog::NumericEntryDialog(wxWindow*, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long, long, long, long, REHex::NumericEntryDialog::BaseHint)::{lambda(wxCommandEvent&)#2}::operator()(wxCommandEvent&) const (event=..., __closure=0x11b1d08) at src/NumericEntryDialog.hpp:144 #5 wxEventFunctorFunctor, REHex::NumericEntryDialog::NumericEntryDialog(wxWindow*, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long, long, long, long, REHex::NumericEntryDialog::BaseHint)::{lambda(wxCommandEvent&)#2}>::operator()(wxEvtHandler*, wxEvent&) (this=0x11b1d00, event=...) at /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/include/wx-3.2/wx/event.h:547 #6 0x00007ffff7d65046 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #7 0x00007ffff7d654b6 in wxEvtHandler::SearchDynamicEventTable(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #8 0x00007ffff7d65840 in wxEvtHandler::TryHereOnly(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #9 0x00007ffff7d658eb in wxEvtHandler::ProcessEventLocally(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #10 0x00007ffff7d659f1 in wxEvtHandler::ProcessEvent(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #11 0x00007ffff7d67187 in wxEvtHandler::SafelyProcessEvent(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #12 0x00007ffff768b55a in wxgtk_button_clicked_callback () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #13 0x00007ffff61b17d9 in _g_closure_invoke_va () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #14 0x00007ffff61cb64d in g_signal_emit_valist () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #15 0x00007ffff61cb94f in g_signal_emit () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #16 0x00007ffff6913729 in button_activate_timeout () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #17 0x00007ffff6754cd9 in gdk_threads_dispatch () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgdk-3.so.0 #18 0x00007ffff60b445b in g_timeout_dispatch () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #19 0x00007ffff60b38e4 in g_main_context_dispatch () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #20 0x00007ffff60b3c88 in g_main_context_iterate.constprop () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #21 0x00007ffff60b3f73 in g_main_loop_run () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #22 0x00007ffff6a27405 in gtk_main () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #23 0x00007ffff7629035 in wxGUIEventLoop::DoRun() () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #24 0x00007ffff7c3706d in wxEventLoopBase::Run() () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #25 0x00007ffff7696783 in wxDialog::ShowModal() () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #26 0x00000000005773cd in REHex::MainWindow::OnGotoOffset (this=0x13b9af0, event=...) at src/mainwindow.cpp:1192 #27 0x00007ffff7d65046 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #28 0x00007ffff7d651c3 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #29 0x00007ffff7d65869 in wxEvtHandler::TryHereOnly(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #30 0x00007ffff7d658eb in wxEvtHandler::ProcessEventLocally(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #31 0x00007ffff7d659f1 in wxEvtHandler::ProcessEvent(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #32 0x00007ffff78284ca in wxWindowBase::TryAfter(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #33 0x00007ffff7d67187 in wxEvtHandler::SafelyProcessEvent(wxEvent&) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #34 0x00007ffff77d7510 in wxMenuBase::DoProcessEvent(wxMenuBase*, wxEvent&, wxWindow*) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #35 0x00007ffff77d77d8 in wxMenuBase::SendEvent(int, int) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #36 0x00007ffff76a9a63 in menuitem_activate () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #37 0x00007ffff61b15af in g_closure_invoke () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #38 0x00007ffff61c4917 in signal_emit_unlocked_R () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #39 0x00007ffff61cb6ba in g_signal_emit_valist () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #40 0x00007ffff61cb94f in g_signal_emit () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #41 0x00007ffff6b746c0 in closure_accel_activate () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #42 0x00007ffff61b15af in g_closure_invoke () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #43 0x00007ffff61c4917 in signal_emit_unlocked_R () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #44 0x00007ffff61caeef in g_signal_emit_valist () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #45 0x00007ffff61cb94f in g_signal_emit () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #46 0x00007ffff68e5e98 in gtk_accel_group_activate () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #47 0x00007ffff68e77bd in gtk_accel_groups_activate () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #48 0x00007ffff6b97ebe in gtk_window_activate_key () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #49 0x00007ffff763ebdb in wxgtk_tlw_key_press_event () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #50 0x00007ffff68ca909 in _gtk_marshal_BOOLEAN__BOXED () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #51 0x00007ffff61b15af in g_closure_invoke () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #52 0x00007ffff61c4917 in signal_emit_unlocked_R () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #53 0x00007ffff61caeef in g_signal_emit_valist () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #54 0x00007ffff61cb94f in g_signal_emit () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libgobject-2.0.so.0 #55 0x00007ffff6b725f4 in gtk_widget_event_internal.part () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #56 0x00007ffff6a2689f in propagate_event () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #57 0x00007ffff6a2823d in gtk_main_do_event () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #58 0x00007ffff675fa65 in _gdk_event_emit () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgdk-3.so.0 #59 0x00007ffff67b69d2 in gdk_event_source_dispatch () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgdk-3.so.0 #60 0x00007ffff60b39db in g_main_context_dispatch () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #61 0x00007ffff60b3c88 in g_main_context_iterate.constprop () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #62 0x00007ffff60b3f73 in g_main_loop_run () from /nix/store/2k366jrbsra97gjfxwvrhvixjfxdach5-glib-2.74.1/lib/libglib-2.0.so.0 #63 0x00007ffff6a27405 in gtk_main () from /nix/store/2j2znigd8ak37rlwh9khz0ry3clqlw1l-gtk+3-3.24.34/lib/libgtk-3.so.0 #64 0x00007ffff7629035 in wxGUIEventLoop::DoRun() () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_gtk3u_core-3.2.so.0 #65 0x00007ffff7c3706d in wxEventLoopBase::Run() () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #66 0x00007ffff7c01b2b in wxAppConsoleBase::MainLoop() () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #67 0x00007ffff7c7f286 in wxEntry(int&, wchar_t**) () from /nix/store/8w1ckqq237kkqi39x7l9i9c4b0rk590m-wxwidgets-3.2.1/lib/libwx_baseu-3.2.so.0 #68 0x00000000004b9c86 in main (argc=, argv=) at src/AppMain.cpp:41 ```

https://user-images.githubusercontent.com/23431373/205762184-f91f6e9b-2164-4c44-93be-3db941f899fd.mp4

solemnwarning commented 1 year ago

Thanks for finding this. Its due to a setting not being initialised correctly, if you open and close rehex once it should write out a default value and the next time you launch it should work fine.