Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Weechat crashes with python 3.9 #1598

Closed
nathan-thenut opened this issue Dec 9, 2020 · 25 comments
Closed

Weechat crashes with python 3.9 #1598

nathan-thenut opened this issue Dec 9, 2020 · 25 comments
Assignees
Labels
bug Unexpected problem or unintended behavior not reproduced The problem can not be reproduced

Comments

@nathan-thenut
Copy link

Bug summary

When you start weechat on the command line with python 3.9 installed it crashes immediately.

Steps to reproduce

1. Install Python 3.9
2. Start weechat 3.0/2.9

Current behavior

Crashes upon start.

Expected behavior

It shouldn't crash.

Suggested solutions

Additional information

#0 0x00007fab8d0fe615 in raise () from /usr/lib/libc.so.6
No symbol table info available.
#1 0x00007fab8d0e7862 in abort () from /usr/lib/libc.so.6
No symbol table info available.
#2 0x000055e50ac4f026 in weechat_shutdown (return_code=1, crash=1) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/weechat.c:752
No locals.
#3
No symbol table info available.
#4 0x00007fab8b918f82 in PyLong_FromLong () from /usr/lib/libpython3.9.so.1.0
No symbol table info available.
#5 0x00007fab8bc29134 in weechat_python_api_hook_print_cb (pointer=0x55e50d18a3b0, data=, buffer=0x55e50cc32e80, date=1607517281, tags_count=, tags=0x0, displayed=1, highlight=0, prefix=0x55e50d3cdf00 "",
message=0x55e50d310250 "python scripts loaded: autosort, go, lnotify") at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/python/weechat-python-api.c:2648
script = 0x55e50d18a3b0
func_argv = {0x7fff6dad5237, 0x7fab8c1254c0 <str_pointer+512>, 0x7fab8bc3dce0 , 0x55e50d227610, 0x55e50ac88178 <utf8_charcasecmp+40>, 0x55e50cf6931e, 0x55e50cf5b5a0, 0x0}
empty_arg = ""
ptr_function = 0x55e50cf67d30 "@\245\210\f\345U"
ptr_data = 0x0
timebuffer = "1607517281", '\000' <repeats 53 times>
rc =
ret =
#6 0x000055e50ac8f3c2 in hook_print_exec (buffer=0x55e50cc32e80, line=0x55e50d3cdfa0) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/hook/wee-hook-print.c:132
ptr_hook = 0x55e50d135c20
next_hook = 0x0
prefix_no_color =
message_no_color = 0x55e50d310250 "python scripts loaded: autosort, go, lnotify"
#7 0x000055e50acaa669 in gui_chat_printf_date_tags_internal (buffer=, date=, date_printed=, tags=, message=) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/gui-chat.c:864
display_time =
length_data =
length_str = 47
ptr_msg =
pos_prefix =
pos_tab =
modifier_data = 0x55e50cfc0280 "0x55e50cc32e80;"
string = 0x55e50d1b4620 " \tpython scripts loaded: autosort, go, lnotify"
new_string =
new_line = 0x55e50d3cdfa0
no_print =
#8 0x000055e50acaa947 in gui_chat_printf_date_tags (buffer=0x55e50cc32e80, date=1607517281, tags=0x0, message=) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/gui-chat.c:1001
date_printed = 1607517281
pos = 0x55e50d3b8dc0 "python scripts loaded: autosort, go, lnotify"
pos_end = 0x0
argptr = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff6dad5450, reg_save_area = 0x7fff6dad5360}}
vaa_size =
vaa_num =
vbuffer = 0x55e50d3b8dc0 "python scripts loaded: autosort, go, lnotify"
vaa_buffer2 =
#9 0x00007fab8c112ef6 in plugin_script_display_short_list (weechat_plugin=0x55e50cd6e0a0, scripts=) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin-script.c:1629
scripts_loaded = 0x7fab8c118a64 "%s scripts loaded:"
buf = 0x55e50cf60230 "python scripts loaded: autosort, go, lnotify"
length = 49
ptr_script =
#10 0x00007fab8bc0de83 in weechat_plugin_init (plugin=, argc=0, argv=0x0) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/python/weechat-python.c:1682
No locals.
#11 0x000055e50acd53ec in plugin_call_init (argv=, argc=, plugin=) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:361
init_func = 0x7fab8bc0dcc0 <weechat_plugin_init>
plugin_argc = 0
no_connect = 0
old_auto_connect = 1
rc =
plugin_argv = 0x0
init_func =
plugin_argc =
no_connect =
rc =
old_auto_connect =
plugin_argv =
#12 plugin_call_init (plugin=0x55e50cd6e0a0, argc=, argv=) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:332
init_func =
plugin_argc =
no_connect =
rc =
old_auto_connect =
plugin_argv =
#13 0x000055e50acd6efe in plugin_auto_load (force_plugin_autoload=force_plugin_autoload@entry=0x0, load_from_plugin_path=load_from_plugin_path@entry=1, load_from_extra_lib_dir=load_from_extra_lib_dir@entry=1, load_from_lib_dir=load_from_lib_dir@entry=1, argc=argc@entry=1,
argv=argv@entry=0x7fff6dad56e8) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:1119
dir_name =
plugin_path =
plugin_path2 =
extra_libdir =
ptr_plugin_autoload =
ptr_plugin = 0x55e50cd6e0a0
plugin_args = {argc = 1, argv = 0x7fff6dad56e8}
arraylist = 0x55e50cd7cf80
length =
i = 12
#14 0x000055e50acd75df in plugin_init (force_plugin_autoload=0x0, argc=argc@entry=1, argv=argv@entry=0x7fff6dad56e8) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:1384
No locals.
#15 0x000055e50ac502d8 in weechat_init (argc=argc@entry=1, argv=argv@entry=0x7fff6dad56e8, gui_init_cb=) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/weechat.c:835
No locals.
#16 0x000055e50ac4f076 in main (argc=1, argv=0x7fff6dad56e8) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/curses/normal/main.c:42
No locals.


  • WeeChat version:  3.0/2.9
  • OS, distribution and version:  ArchLinux, 5.9.13-arch1-1
  • Terminal: termite
  • Terminal multiplexer (screen/tmux/…/none):  none

if you need further information, please tell me.

@nathan-thenut nathan-thenut added the bug Unexpected problem or unintended behavior label Dec 9, 2020
@flashcode
Copy link
Member

Hi,

I'm running with Python 3.9 (3.9.1 on Debian Sid) as well, and no problems so far, even if I compile with the address sanitizer, which should crash immediately in case of problem.

I see you are using 3 Python scripts, can you try without them and load them one by one to check if a specific script brings the crash?
I tried with these scripts, no problems for me.

According to your backtrace, it seems the crash is in Python itself, in PyLong_FromLong (), so I'm not sure if the problem is a Python install issue or in WeeChat itself.

@flashcode flashcode self-assigned this Dec 9, 2020
@flashcode flashcode added the waiting info Waiting for info from author of issue label Dec 9, 2020
@nathan-thenut
Copy link
Author

This seems to be causing the crash as soon as I load it: https://weechat.org/scripts/source/mpc.py.html/
All other scripts work fine for me.

@flashcode
Copy link
Member

This script does not even work with Python 3, I have this error displayed, but no crash:

    | python: stdout/stderr (mpc): Traceback (most recent call last):
    | python: stdout/stderr (mpc):   File "/tmp/weechat/python/autoload/mpc.py", line 305, in <module>
    | python: stdout/stderr (mpc):     set_config()
    | python: stdout/stderr (mpc):   File "/tmp/weechat/python/autoload/mpc.py", line 271, in set_config
    | python: stdout/stderr (mpc):     for k, v in DEFAULT_CONFIG.iteritems():
    | python: stdout/stderr (mpc): AttributeError: 'dict' object has no attribute 'iteritems'
=!= | python: unable to parse file "/tmp/weechat/python/autoload/mpc.py"

Maybe the crash happens because other scripts are loaded before this one.

@nathan-thenut
Copy link
Author

How did you get that error? I always tried to load the script from inside a running weechat

@flashcode
Copy link
Member

Just with this command: /script install mpc.py
And same error if I quit and run WeeChat again (as the script is auto-loaded on startup).

@weechatter
Copy link
Contributor

those scripts should be removed from the repo or make them at least inactive Sêbastien, see weechat/scripts#433 as well

@nathan-thenut
Copy link
Author

Thanks for the help so far, so maybe this issue should be opened in weechat/scripts instead?

@flashcode
Copy link
Member

Anyway, even if there are problems in the script, it should not cause a crash (except if the script does really bad things, but I'm not sure that's the case).
And I'm confused because I can not reproduce the crash.

I wonder if it's a Python installation issue, did you install Python 3.9 manually or with your package manager?

@nathan-thenut
Copy link
Author

I installed it with the package manager. I even build weechat locally and installed it again. The crash keeps happening when I try to load that script

@flashcode
Copy link
Member

Could you please try to compile with address sanitizer enabled and check if you have a different backtrace when it crashes?

See the user's guide: https://weechat.org/files/doc/stable/weechat_user.en.html#report_crashes

@nathan-thenut
Copy link
Author

I did that and now weechat will crash and not even dump a core even with the plugin unloaded.
I get this when trying to start weechat:

===================================================================5264==ERROR: AddressSanitizer: odr-violation (0x7f523b7091c0):
                                                                                                                                  
[1] size=4 'weechat_plugin_priority' /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/fifo/fifo.c:45:1
[2] size=4 'weechat_plugin_priority' /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/relay/relay.c:45:1
These globals were registered at these points:
[1]:
#0 0x7f523f71969a in __asan_register_globals /build/gcc/src/gcc/libsanitizer/asan/asan_globals.cpp:341
#1 0x7f523b7046ba in _sub_I_00099_1 (/usr/lib/weechat/plugins/fifo.so+0x46ba)
#2 0x7f524010d2dd in call_init.part.0 (/lib64/ld-linux-x86-64.so.2+0x112dd)
[2]:
#0 0x7f523f71969a in __asan_register_globals /build/gcc/src/gcc/libsanitizer/asan/asan_globals.cpp:341
#1 0x7f523aaa6b2c in _sub_I_00099_1 (/usr/lib/weechat/plugins/relay.so+0x1db2c)
#2 0x7f524010d2dd in call_init.part.0 (/lib64/ld-linux-x86-64.so.2+0x112dd)

==5264==HINT: if you don't care about these errors you may set ASAN_OPTIONS=detect_odr_violation=0
SUMMARY: AddressSanitizer: odr-violation: global 'weechat_plugin_priority' at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/fifo/fifo.c:45:1
==5264==ABORTING

@flashcode
Copy link
Member

OK then you could try to run WeeChat like this:

ASAN_OPTIONS="detect_odr_violation=0 log_path=asan.log" weechat

In case of crash, you'll have backtrace in asan.log.

I'll update the docs accordingly.

@nathan-thenut
Copy link
Author

Thanks, that helped.

When I first executed it and installed & loaded the script, nothing happened. I then restarted weechat with the same asan options - and it crashed on start. There was no asan.log but a backtrace which is more or less the same as before:


#0  0x00007fd3c7614615 in raise () from /usr/lib/libc.so.6
No symbol table info available.
#1  0x00007fd3c75fd862 in abort () from /usr/lib/libc.so.6
No symbol table info available.
#2  0x000055bdf0213169 in weechat_shutdown (return_code=1, crash=1) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/weechat.c:752
No locals.
#3  0x000055bdf026386f in debug_sigsegv () at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/wee-debug.c:184
No locals.
#4  <signal handler called>
No symbol table info available.
#5  0x00007fd3c2539f82 in PyLong_FromLong () from /usr/lib/libpython3.9.so.1.0
No symbol table info available.
#6  0x00007fd3c2875898 in weechat_python_api_hook_print_cb (pointer=0x60800000a8a0, data=0x6020000b8730, buffer=0x616000017780, date=1607811446, tags_count=0, tags=0x0, displayed=1, highlight=0, prefix=0x6020000c9690 "", 
    message=0x60800000c0a0 "python scripts loaded: autosort, go, lnotify") at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/python/weechat-python-api.c:2648
        script = 0x60800000a8a0
        func_argv = {0x7ffd69f8b690, 0x7fd3c3125640 <str_pointer+384>, 0x7fd3c28e2540 <timebuffer>, 0x6020000c9a90, 0x7ffd69f8b8e0, 0x7ffd69f8b860, 0x7ffd69f8b6d0, 0x55bdf0294235 <string_match+768>}
        empty_arg = ""
        ptr_function = 0x6020000b8730 "f"
        ptr_data = 0x0
        timebuffer = "1607811446", '\000' <repeats 53 times>
        rc = 0x55bdf02aa269 <utf8_wide_char+104>
        ret = 24704
#7  0x000055bdf02c46c0 in hook_print_exec (buffer=0x616000017780, line=0x6030000ca0f0) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/hook/wee-hook-print.c:132
        ptr_hook = 0x607000034f20
        next_hook = 0x0
        prefix_no_color = 0x6020000c9690 ""
        message_no_color = 0x60800000c0a0 "python scripts loaded: autosort, go, lnotify"
#8  0x000055bdf031858b in gui_chat_printf_date_tags_internal (buffer=0x616000017780, date=1607811446, date_printed=1607811446, tags=0x0, message=0x6190002c8380 "python scripts loaded: autosort, go, lnotify") at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/gui-chat.c:864
        display_time = 1
        length_data = 66
        length_str = 47
        ptr_msg = 0x6190002c8380 "python scripts loaded: autosort, go, lnotify"
        pos_prefix = 0x0
        pos_tab = 0x0
        modifier_data = 0x607000038db0 "0x616000017780;"
        string = 0x604000063510 " \tpython scripts loaded: autosort, go, lnotify"
        new_string = 0x604000063550 " \tpython scripts loaded: autosort, go, lnotify"
        new_line = 0x6030000ca0f0
#9  0x000055bdf0318e46 in gui_chat_printf_date_tags (buffer=0x616000017780, date=1607811446, tags=0x0, message=0x7fd3c310f9e0 "%s") at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/gui-chat.c:1001
        date_printed = 1607811446
        pos = 0x6190002c8380 "python scripts loaded: autosort, go, lnotify"
        pos_end = 0x0
        argptr = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7ffd69f8b9c0, reg_save_area = 0x7ffd69f8b8e0}}
        vaa_size = 1024
        vaa_num = 44
        vbuffer = 0x6190002c8380 "python scripts loaded: autosort, go, lnotify"
        vaa_buffer2 = 0x7fd3c760e8d7 <__dcigettext+903> "H\213\005r\245\030"
#10 0x00007fd3c30fd6de in plugin_script_display_short_list (weechat_plugin=0x61e000010880, scripts=0x60800000aba0) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin-script.c:1629
        scripts_loaded = 0x7fd3c31114e0 "%s scripts loaded:"
        buf = 0x60600002daa0 "python scripts loaded: autosort, go, lnotify"
        length = 49
        ptr_script = 0x0
#11 0x00007fd3c283f6aa in weechat_plugin_init (plugin=0x61e000010880, argc=0, argv=0x0) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/python/weechat-python.c:1682
No locals.
#12 0x000055bdf039e12f in plugin_call_init (plugin=0x61e000010880, argc=1, argv=0x7ffd69f8bd98) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:361
        init_func = 0x7fd3c283f0a1 <weechat_plugin_init>
        plugin_argc = 0
        no_connect = 0
        rc = 0
        old_auto_connect = 1
        plugin_argv = 0x0
#13 0x000055bdf03a3d1d in plugin_auto_load (force_plugin_autoload=0x0, load_from_plugin_path=1, load_from_extra_lib_dir=1, load_from_lib_dir=1, argc=1, argv=0x7ffd69f8bd98) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:1119
        dir_name = 0x604000025ed0 "!"
        plugin_path = 0x60200006e850 "\037"
        plugin_path2 = 0x60300006b980 "'"
        extra_libdir = 0x0
        ptr_plugin_autoload = 0x60200002d210 "*"
        ptr_plugin = 0x61e000010880
        plugin_args = {argc = 1, argv = 0x7ffd69f8bd98}
        arraylist = 0x6060000113c0
        length = 33
        i = 12
#14 0x000055bdf03a4a05 in plugin_init (force_plugin_autoload=0x0, argc=1, argv=0x7ffd69f8bd98) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/plugin.c:1384
No locals.
#15 0x000055bdf0213424 in weechat_init (argc=1, argv=0x7ffd69f8bd98, gui_init_cb=0x55bdf038a4ee <gui_main_init>) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/weechat.c:835
No locals.
#16 0x000055bdf021113a in main (argc=1, argv=0x7ffd69f8bd98) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/curses/normal/main.c:42
No locals.
quit

Then I removed mpc.py from the autoload and ran weechat again and loaded it from inside weechat - this time it crashed, with a slightly different stacktrace:


#0  0x00007f6b99afd615 in raise () from /usr/lib/libc.so.6
No symbol table info available.
#1  0x00007f6b99ae6862 in abort () from /usr/lib/libc.so.6
No symbol table info available.
#2  0x000055e30b8e5169 in weechat_shutdown (return_code=1, crash=1) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/weechat.c:752
No locals.
#3  0x000055e30b93586f in debug_sigsegv () at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/wee-debug.c:184
No locals.
#4  0x00007f6b93ebb02f in ?? () from /usr/lib/libruby.so.2.7
No symbol table info available.
#5  0x00007f6b93fcbb3a in ?? () from /usr/lib/libruby.so.2.7
No symbol table info available.
#6  <signal handler called>
No symbol table info available.
#7  0x00007f6b94a39f82 in PyLong_FromLong () from /usr/lib/libpython3.9.so.1.0
No symbol table info available.
#8  0x00007f6b94d34898 in weechat_python_api_hook_print_cb (pointer=0x60800000a8a0, data=0x6020000b8730, buffer=0x6160001b1880, date=1607812467, tags_count=5, tags=0x604000578e90, displayed=1, highlight=0, prefix=0x6020028fd4d0 "<--", 
    message=0x610000071340 "sord937 (~sord937@gateway/tor-sasl/sord937) has quit (Quit: sord937)") at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/python/weechat-python-api.c:2648
        script = 0x60800000a8a0
        func_argv = {0x7ffc4de58700, 0x7f6b956254c0 <str_pointer>, 0x7f6b94da1540 <timebuffer>, 0x608000115aa0, 0x7ffc4de58950, 0x7ffc4de588d0, 0x7ffc4de58740, 0x55e30b966235 <string_match+768>}
        empty_arg = ""
        ptr_function = 0x6020000b8730 "Q"
        ptr_data = 0x0
        timebuffer = "1607812467", '\000' <repeats 53 times>
        rc = 0x6080001159a0
        ret = 24832
#9  0x000055e30b9966c0 in hook_print_exec (buffer=0x6160001b1880, line=0x603000ffed10) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/hook/wee-hook-print.c:132
        ptr_hook = 0x607000034f20
        next_hook = 0x0
        prefix_no_color = 0x6020028fd4d0 "<--"
        message_no_color = 0x610000071340 "sord937 (~sord937@gateway/tor-sasl/sord937) has quit (Quit: sord937)"
#10 0x000055e30b9ea58b in gui_chat_printf_date_tags_internal (buffer=0x6160001b1880, date=1607812467, date_printed=1607812467, tags=0x7f6b950b8040 <string> "irc_quit,irc_smart_filter,nick_sord937,host_~sord937@gateway/tor-sasl/sord937,log4", 
    message=0x619000557d80 "\031\060\070<--") at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/gui-chat.c:864
        display_time = 1
        length_data = 148
        length_str = 103
        ptr_msg = 0x619000557d87 "\031F05sord937\031\062\070 (\031\062\067~sord937@gateway/tor-sasl/sord937\031\062\070)\031F03 has quit \031\062\070(\031F00Quit: sord937\031\062\070)"
        pos_prefix = 0x619000557d80 "\031\060\070<--"
        pos_tab = 0x619000557d86 ""
        modifier_data = 0x60e0009c7aa0 "0x6160001b1880;irc_quit,irc_smart_filter,nick_sord937,host_~sord937@gateway/tor-sasl/sord937,log4"
        string = 0x60b0001fd950 "\031\060\070<--\t\031F05sord937\031\062\070 (\031\062\067~sord937@gateway/tor-sasl/sord937\031\062\070)\031F03 has quit \031\062\070(\031F00Quit: sord937\031\062\070)"
        new_string = 0x60b0001fda00 "\031\060\070<--\t\031F05sord937\031\062\070 (\031\062\067~sord937@gateway/tor-sasl/sord937\031\062\070)\031F03 has quit \031\062\070(\031F00Quit: sord937\031\062\070)"
        new_line = 0x603000ffed10
#11 0x000055e30b9eae46 in gui_chat_printf_date_tags (buffer=0x6160001b1880, date=1607812467, tags=0x7f6b950b8040 <string> "irc_quit,irc_smart_filter,nick_sord937,host_~sord937@gateway/tor-sasl/sord937,log4", message=0x7f6b95060160 "%s%s%s%s%s%s%s%s%s%s has quit %s(%s%s%s)")
    at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/gui-chat.c:1001
        date_printed = 1607812467
        pos = 0x619000557d80 "\031\060\070<--"
        pos_end = 0x0
        argptr = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7ffc4de58a90, reg_save_area = 0x7ffc4de58950}}
        vaa_size = 1024
        vaa_num = 102
        vbuffer = 0x619000557d80 "\031\060\070<--"
        vaa_buffer2 = 0x7f6b9505e000 "irc_"
#12 0x00007f6b94fa5185 in irc_protocol_cb_quit (server=0x61900002f880, date=0, nick=0x6020028f9110 "sord937", address=0x60600033fc80 "~sord937@gateway/tor-sasl/sord937", host=0x60600033fda0 "sord937!~sord937@gateway/tor-sasl/sord937", command=0x7f6b9505bda0 "quit", ignored=0, 
    argc=4, argv=0x604000578dd0, argv_eol=0x604000578e50) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/irc/irc-protocol.c:2657
        pos_comment = 0x6020028fb111 "Quit: sord937"
        ptr_channel = 0x611000148c40
        ptr_nick = 0x6070001c36d0
        ptr_nick_speaking = 0x0
        local_quit = 0
        display_host = 1
#13 0x00007f6b94fcc631 in irc_protocol_recv_command (server=0x61900002f880, irc_message=0x60c000257b00 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937", msg_command=0x6020028f9050 "QUIT", msg_channel=0x0)
    at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/irc/irc-protocol.c:6768
        i = 17
        cmd_found = 17
        return_code = 0
        argc = 4
        decode_color = 1
        keep_trailing_spaces = 1
        message_ignored = 0
        flags = 13
        message_colors_decoded = 0x6080001155a0 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        pos_space = 0x60600033fd09 ""
        tags = 0x7f6b99b7da1a <tzset_internal+362> "H\215=\222\027\r"
        ptr_channel = 0x0
        cmd_recv_func = 0x7f6b94fa4107 <irc_protocol_cb_quit>
        cmd_name = 0x7f6b9505bda0 "quit"
        ptr_msg_after_tags = 0x60c000257b00 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        date = 0
        nick1 = 0x7f6b950b73c0 <nick> "sord937"
        address1 = 0x7f6b950b7460 <address> "~sord937@gateway/tor-sasl/sord937"
        host1 = 0x60c000257b01 "sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        nick = 0x6020028f9110 "sord937"
        address = 0x604000578d90 "~sord937@gateway/tor-sasl/sord937"
        address_color = 0x60600033fc80 "~sord937@gateway/tor-sasl/sord937"
        host = 0x60600033fce0 "sord937!~sord937@gateway/tor-sasl/sord937"
        host_no_color = 0x60600033fd40 "sord937!~sord937@gateway/tor-sasl/sord937"
        host_color = 0x60600033fda0 "sord937!~sord937@gateway/tor-sasl/sord937"
        argv = 0x604000578dd0
        argv_eol = 0x604000578e50
        hash_tags = 0x0
        irc_protocol_messages = {{name = 0x7f6b9505b960 "account", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f8d6e4 <irc_protocol_cb_account>}, {name = 0x7f6b9505b9a0 "authenticate", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f8e44b <irc_protocol_cb_authenticate>}, {name = 0x7f6b9505b9e0 "away", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f8f800 <irc_protocol_cb_away>}, {name = 0x7f6b9505ba20 "cap", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f90edf <irc_protocol_cb_cap>}, {name = 0x7f6b9505ba60 "chghost", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f94e9e <irc_protocol_cb_chghost>}, {name = 0x7f6b9505baa0 "error", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f95d64 <irc_protocol_cb_error>}, {name = 0x7f6b9505bae0 "invite", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f968a8 <irc_protocol_cb_invite>}, {name = 0x7f6b9505bb20 "join", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f974b6 <irc_protocol_cb_join>}, {name = 0x7f6b9505bb60 "kick", decode_color = 1, keep_trailing_spaces = 1, recv_function = 0x7f6b94f98eac <irc_protocol_cb_kick>}, {name = 0x7f6b9505bba0 "kill", decode_color = 1, keep_trailing_spaces = 1, 
            recv_function = 0x7f6b94f9a914 <irc_protocol_cb_kill>}, {name = 0x7f6b9505bbe0 "mode", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f9b77f <irc_protocol_cb_mode>}, {name = 0x7f6b9505bc20 "nick", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f9c71e <irc_protocol_cb_nick>}, {name = 0x7f6b9505bc60 "notice", decode_color = 1, keep_trailing_spaces = 1, recv_function = 0x7f6b94f9e24e <irc_protocol_cb_notice>}, {name = 0x7f6b9505bca0 "part", decode_color = 1, keep_trailing_spaces = 1, 
            recv_function = 0x7f6b94fa0131 <irc_protocol_cb_part>}, {name = 0x7f6b9505bce0 "ping", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fa1d63 <irc_protocol_cb_ping>}, {name = 0x7f6b9505bd20 "pong", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94fa1fee <irc_protocol_cb_pong>}, {name = 0x7f6b9505bd60 "privmsg", decode_color = 1, keep_trailing_spaces = 1, recv_function = 0x7f6b94fa27b1 <irc_protocol_cb_privmsg>}, {name = 0x7f6b9505bda0 "quit", decode_color = 1, keep_trailing_spaces = 1, 
            recv_function = 0x7f6b94fa4107 <irc_protocol_cb_quit>}, {name = 0x7f6b9505bde0 "topic", decode_color = 0, keep_trailing_spaces = 1, recv_function = 0x7f6b94fa627f <irc_protocol_cb_topic>}, {name = 0x7f6b9505be20 "wallops", decode_color = 1, keep_trailing_spaces = 1, 
            recv_function = 0x7f6b94fa7eca <irc_protocol_cb_wallops>}, {name = 0x7f6b9505be60 "001", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fa834a <irc_protocol_cb_001>}, {name = 0x7f6b9505bea0 "005", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94fa97ce <irc_protocol_cb_005>}, {name = 0x7f6b9505bee0 "008", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94faadd2 <irc_protocol_cb_008>}, {name = 0x7f6b9505bf20 "221", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94fab2da <irc_protocol_cb_221>}, {name = 0x7f6b9505bf60 "223", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505bfa0 "264", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505bfe0 "275", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c020 "276", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c060 "301", decode_color = 1, keep_trailing_spaces = 1, recv_function = 0x7f6b94faba56 <irc_protocol_cb_301>}, {name = 0x7f6b9505c0a0 "303", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94fac250 <irc_protocol_cb_303>}, {name = 0x7f6b9505c0e0 "305", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fac6b6 <irc_protocol_cb_305>}, {name = 0x7f6b9505c120 "306", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94facb2e <irc_protocol_cb_306>}, {name = 0x7f6b9505c160 "307", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c1a0 "310", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c1e0 "311", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fadaa1 <irc_protocol_cb_311>}, {name = 0x7f6b9505c220 "312", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94fae16d <irc_protocol_cb_312>}, {name = 0x7f6b9505c260 "313", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c2a0 "314", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94fae84c <irc_protocol_cb_314>}, {name = 0x7f6b9505c2e0 "315", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94faef86 <irc_protocol_cb_315>}, {name = 0x7f6b9505c320 "317", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94faf59d <irc_protocol_cb_317>}, {name = 0x7f6b9505c360 "318", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c3a0 "319", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c3e0 "320", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c420 "321", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb0cb3 <irc_protocol_cb_321>}, {name = 0x7f6b9505c460 "322", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb10c1 <irc_protocol_cb_322>}, {name = 0x7f6b9505c4a0 "323", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb183f <irc_protocol_cb_323>}, {name = 0x7f6b9505c4e0 "324", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb1c3a <irc_protocol_cb_324>}, {name = 0x7f6b9505c520 "326", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c560 "327", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb25ad <irc_protocol_cb_327>}, {name = 0x7f6b9505c5a0 "328", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb3025 <irc_protocol_cb_328>}, {name = 0x7f6b9505c5e0 "329", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb35a1 <irc_protocol_cb_329>}, {name = 0x7f6b9505c620 "330", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb40af <irc_protocol_cb_330_343>}, {name = 0x7f6b9505c660 "331", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb4b9c <irc_protocol_cb_331>}, {name = 0x7f6b9505c6a0 "332", 
            decode_color = 0, keep_trailing_spaces = 1, recv_function = 0x7f6b94fb501b <irc_protocol_cb_332>}, {name = 0x7f6b9505c6e0 "333", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb5b27 <irc_protocol_cb_333>}, {name = 0x7f6b9505c720 "335", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505c760 "338", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb72f7 <irc_protocol_cb_338>}, {name = 0x7f6b9505c7a0 "341", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb78f9 <irc_protocol_cb_341>}, {name = 0x7f6b9505c7e0 "343", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb40af <irc_protocol_cb_330_343>}, {name = 0x7f6b9505c820 "344", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb7fe3 <irc_protocol_cb_344>}, {name = 0x7f6b9505c860 "345", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb8548 <irc_protocol_cb_345>}, {name = 0x7f6b9505c8a0 "346", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fb89e5 <irc_protocol_cb_346>}, {name = 0x7f6b9505c8e0 "347", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fba1a5 <irc_protocol_cb_347>}, {name = 0x7f6b9505c920 "348", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fba918 <irc_protocol_cb_348>}, {name = 0x7f6b9505c960 "349", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fbc1c5 <irc_protocol_cb_349>}, {name = 0x7f6b9505c9a0 "351", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fbc938 <irc_protocol_cb_351>}, {name = 0x7f6b9505c9e0 "352", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fbce74 <irc_protocol_cb_352>}, {name = 0x7f6b9505ca20 "353", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fbde0f <irc_protocol_cb_353>}, {name = 0x7f6b9505ca60 "354", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fbef9a <irc_protocol_cb_354>}, {name = 0x7f6b9505caa0 "366", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc052b <irc_protocol_cb_366>}, {name = 0x7f6b9505cae0 "367", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc3141 <irc_protocol_cb_367>}, {name = 0x7f6b9505cb20 "368", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc4901 <irc_protocol_cb_368>}, {name = 0x7f6b9505cb60 "369", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fad527 <irc_protocol_cb_whowas_nick_msg>}, {
            name = 0x7f6b9505cba0 "378", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505cbe0 "379", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505cc20 "401", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cc60 "402", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cca0 "403", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cce0 "404", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cd20 "405", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {
            name = 0x7f6b9505cd60 "406", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cda0 "407", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cde0 "409", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505ce20 "410", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505ce60 "411", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cea0 "412", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cee0 "413", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {
            name = 0x7f6b9505cf20 "414", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cf60 "421", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cfa0 "422", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505cfe0 "423", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d020 "424", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d060 "431", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d0a0 "432", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc5074 <irc_protocol_cb_432>}, {name = 0x7f6b9505d0e0 "433", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc54a9 <irc_protocol_cb_433>}, {name = 0x7f6b9505d120 "436", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d160 "437", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc58e0 <irc_protocol_cb_437>}, {name = 0x7f6b9505d1a0 "438", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc5d93 <irc_protocol_cb_438>}, {name = 0x7f6b9505d1e0 "441", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d220 "442", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {
            name = 0x7f6b9505d260 "443", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d2a0 "444", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d2e0 "445", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d320 "446", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d360 "451", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d3a0 "461", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d3e0 "462", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {
            name = 0x7f6b9505d420 "463", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d460 "464", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d4a0 "465", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d4e0 "467", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d520 "470", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc62d0 <irc_protocol_cb_470>}, {name = 0x7f6b9505d560 "471", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d5a0 "472", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d5e0 "473", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d620 "474", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {
            name = 0x7f6b9505d660 "475", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d6a0 "476", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d6e0 "477", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d720 "481", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d760 "482", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d7a0 "483", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d7e0 "484", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {
            name = 0x7f6b9505d820 "485", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d860 "487", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d8a0 "491", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d8e0 "501", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d920 "502", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505d960 "671", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94facfad <irc_protocol_cb_whois_nick_msg>}, {name = 0x7f6b9505d9a0 "728", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc6eb5 <irc_protocol_cb_728>}, {name = 0x7f6b9505d9e0 "729", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc86da <irc_protocol_cb_729>}, {name = 0x7f6b9505da20 "730", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc8eaf <irc_protocol_cb_730>}, {name = 0x7f6b9505da60 "731", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc946d <irc_protocol_cb_731>}, {name = 0x7f6b9505daa0 "732", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc9a2b <irc_protocol_cb_732>}, {name = 0x7f6b9505dae0 "733", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fc9e26 <irc_protocol_cb_733>}, {name = 0x7f6b9505db20 "734", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fca221 <irc_protocol_cb_734>}, {name = 0x7f6b9505db60 "900", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fca655 <irc_protocol_cb_900>}, {name = 0x7f6b9505dba0 "901", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fcab5b <irc_protocol_cb_901>}, {name = 0x7f6b9505dbe0 "902", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fcb0c2 <irc_protocol_cb_sasl_end_fail>}, {name = 0x7f6b9505dc20 "903", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fcaf2a <irc_protocol_cb_sasl_end_ok>}, {
            name = 0x7f6b9505dc60 "904", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fcb0c2 <irc_protocol_cb_sasl_end_fail>}, {name = 0x7f6b9505dca0 "905", decode_color = 1, keep_trailing_spaces = 0, 
            recv_function = 0x7f6b94fcb0c2 <irc_protocol_cb_sasl_end_fail>}, {name = 0x7f6b9505dce0 "906", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fcb0c2 <irc_protocol_cb_sasl_end_fail>}, {name = 0x7f6b9505dd20 "907", decode_color = 1, 
            keep_trailing_spaces = 0, recv_function = 0x7f6b94fcaf2a <irc_protocol_cb_sasl_end_ok>}, {name = 0x7f6b9505dd60 "936", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94f96148 <irc_protocol_cb_generic_error>}, {name = 0x7f6b9505dda0 "973", 
            decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fa5842 <irc_protocol_cb_server_mode_reason>}, {name = 0x7f6b9505dde0 "974", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fa5842 <irc_protocol_cb_server_mode_reason>}, {
            name = 0x7f6b9505de20 "975", decode_color = 1, keep_trailing_spaces = 0, recv_function = 0x7f6b94fa5842 <irc_protocol_cb_server_mode_reason>}, {name = 0x0, decode_color = 0, keep_trailing_spaces = 0, recv_function = 0x0}}
#14 0x00007f6b94fef506 in irc_server_msgq_flush () at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/irc/irc-server.c:3166
        next = 0x0
        ptr_data = 0x60600033f980 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        new_msg = 0x0
        new_msg2 = 0x0
        ptr_msg = 0x60600033f980 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        ptr_msg2 = 0x60c000257b00 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        pos = 0x0
        nick = 0x6020028f9030 "sord937"
        host = 0x604000578d50 "sord937!~sord937@gateway/tor-sasl/sord937"
        command = 0x6020028f9050 "QUIT"
        channel = 0x0
        arguments = 0x6020028f9070 ":Quit: sord937"
        msg_decoded = 0x60600033fbc0 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        msg_decoded_without_color = 0x60c000257b00 ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937"
        str_modifier = "irc_in2_QUIT\000b\000\000'\000\000\000\000\000\000\000\374\235\345M\374\177\000\000\000\000\000\000\000\000\000\000\f\000\000\000\000\000\000\000\000\202\235\000\001\000\000\000@\000\000\000\000\000\000\000@\235\345M\374\177\000\000\000>\016\071/\027\272\026\027\003\003\000Q\000\000\000\300\345h\000@b\000\000x\204m\234\311_bm\370\207\v\002\000\000\000\000\b\023\020\232k\177\000\000\271\373\363\231k\177\000"
        modifier_data = "irc.freenode.sord937\000\000\000\000\353\375\363\231k\177\000\000\300\345h\000@b\000\000\364\n\364\231k\177\000\000\300\345h\000@b\000\000\027\000\000\000\000\000\000\000'\000\000\000\000\000\000\000\226|\363\231k\177\000\000\360\235\345M\374\177\000\000\000>\016\071/\027\272\026\000\000\000\000\000\000\000\000 \342h\000@b\000\000\000ҝ\000\220b\000\000\027", '\000' <repeats 15 times>, "\353\375\363\231k\177\000\000@\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000ҝ\000\220b\000\000@\000\000\000\000\000\000\000\240\235\v\225k\177\000\000\n\f\364\231k\177\000\000\062\063:34", '\000' <repeats 11 times>...
        pos_channel = -1
        pos_text = 49
        pos_decode = 0
#15 0x00007f6b94ff0502 in irc_server_recv_cb (pointer=0x61900002f880, data=0x0, fd=26) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/plugins/irc/irc-server.c:3313
        server = 0x61900002f880
        buffer = ":sord937!~sord937@gateway/tor-sasl/sord937 QUIT :Quit: sord937\000\000\000\000\000:zhadum.de.eu.irchighway.net 329 Icedman #languagelearning 1455478211\000\000\000eetPoto lolmac flippy +winny Tanami raph_ael verm1n sud0 Sola"...
        num_read = 64
        msgq_flush = 1
        end_recv = 1
#16 0x000055e30b98c289 in hook_fd_exec () at /home/nathan/Downloads/weechat/src/weechat-3.0/src/core/hook/wee-hook-fd.c:261
        i = 5
        num_fd = 7
        timeout = 332
        ready = 1
        found = 1
        ptr_hook = 0x6070000ba000
        next_hook = 0x607000116030
#17 0x000055e30ba5e109 in gui_main_loop () at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/curses/gui-curses-main.c:563
        hook_fd_keyboard = 0x60700007d610
        send_signal_sigwinch = 0
#18 0x000055e30b8e3144 in main (argc=1, argv=0x7ffc4de5a0e8) at /home/nathan/Downloads/weechat/src/weechat-3.0/src/gui/curses/normal/main.c:43
No locals.
quit

This time there was also an asan.log:

==12513==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc4de5b000; bottom 0x6290000f2000; size: 0x1d6c4dd69000 (32350999580672)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189

@flashcode
Copy link
Member

In all the traces you returned, it always crashes on this line:

func_argv[4] = PyLong_FromLong ((long)displayed);

And then it's a crash in Python itself.
displayed is just a number, I see no reason why it would crash on this line.

Do you have a way to test WeeChat and same scripts on another machine, possibly with a different OS?

I still think it's an issue with your Python installation.

@nathan-thenut
Copy link
Author

I have an ubuntu machine too. When I have time later this week, I can try to set up weechat there and see what happens.

@ym1234
Copy link

ym1234 commented Dec 21, 2020

I'm also experiencing this problem on Arch linux with weechat 2.9 and python 3.9.1.
From testing, it seems to happen only when I have more than 3 python plugins being autoloaded.
Full crash log: http://0x0.st/iCTt.log
Plugins: go.py, autosort.py, notify_send.py, listbuffer.py, url_hint.py

======= WeeChat backtrace =======
(written by WeeChat 2.9, compiled on Nov 12 2020 19:50:25)
001  ??:? [function weechat_backtrace]
002  ??:? [function debug_sigsegv]
003  sigaction.c:? [function __restore_rt]
004  ??:? [function PyLong_FromLong]
005  ??:? [function weechat_python_api_hook_print_cb]
006  ??:? [function hook_print_exec]
007  ??:? [function gui_chat_printf_date_tags_internal]
008  ??:? [function gui_chat_printf_date_tags]
009  ??:? [function plugin_script_display_short_list]
010  ??:? [function weechat_plugin_init]
011  ??:? [function plugin_call_init]
012  ??:? [function plugin_auto_load]
013  ??:? [function plugin_init]
014  ??:? [function weechat_init]
015  ??:? [function main]
016  ??:? [function __libc_start_main]
017  ??:? [function _start]
======= End of  backtrace =======
Aborted (core dumped)

@cjsthompson
Copy link

Can confirm the problem on Arch Linux x86-64, python 3.9.1, weechat-3.0-2. However I only have autosort.py loaded at startup and it works with weechat 2.9-3. Maybe the problem has to do with which version of python weechat was built.

======= WeeChat backtrace =======
(written by WeeChat 3.0, compiled on Dec 20 2020 22:17:57)
001 ??:? [function weechat_backtrace]
002 ??:? [function debug_sigsegv]
003 sigaction.c:? [function __restore_rt]
004 ??:? [function GC_generic_malloc_many]
005 ??:? [function GC_malloc_kind]
006 ??:? [function scm_make_soft_port]
007 ??:? [function scm_from_utf8_symbol]
008 ??:? [function scm_boot_guile]
009 ??:? [function scm_current_processor_count]
010 ??:? [function scm_init_guile]
011 ??:? [function weechat_plugin_init]
012 ??:? [function plugin_call_init]
013 ??:? [function plugin_auto_load]
014 ??:? [function plugin_init]
015 ??:? [function weechat_init]
016 ??:? [function main]
017 ??:? [function __libc_start_main]
018 ??:? [function _start]
======= End of backtrace =======

@ArchI3Chris
Copy link

ArchI3Chris commented Jan 26, 2021

I can confirm that too. Pretty much the same backtrace as ym1234. Python 3.9.1 and WeeChat 3.0.

I can add to that: I did try it with weechat -s and it works. So, the problem seems to be somehow connected to the scripts. I'm not sure what I use. Since I did set this up some years ago and it has been working ever since. I know there is some notify_send related stuff in there though. Probably not the same though.

I've never seen this problem before with my setup in years and on a number of devices. But I did run an upgrade today and it occurred afterwards. The scripts/plugins didn't change at all. The setup is the same that has been working for years. So, the problem definitely comes with an upgrade. I'm not sure when it started. But in my case it definitely came with the upgrade today.

@flashcode
Copy link
Member

@ArchI3Chris: for now I'm still unable to reproduce the crash.
Could you please give me your list of loaded scripts (Python and others), so I can try with exactly the same list?
A crash can be caused by interaction between multiple scripts, and possibly the Python version.

@ArchI3Chris
Copy link

ArchI3Chris commented Jan 27, 2021

Well, this couldn't come at a worse time and (don't get me wrong) I've really got more important things to do. But looking into it the problem presented itself to me. It is anotify.py. I had version 1.0.1 before and it worked just fine. Removing it, WeeChat started. So I took the time to try 1.0.2 (as is) from the repo too. Same problem. Doesn't work either and crashes too. Thanks for getting back btw.

Let me add: I've got another script in there (lnotify 0.3.1, meanwhile tried 0.3.5 with same result) and while that could cause a problem, the really interesting question would be, why it didn't before. Because as mentioned before, I had those in there for years and it never gave me any problems or errors. And the scripts and the setup didn't change.

@ArchI3Chris: for now I'm still unable to reproduce the crash.
Could you please give me your list of loaded scripts (Python and others), so I can try with exactly the same list?
A crash can be caused by interaction between multiple scripts, and possibly the Python version.

@flashcode
Copy link
Member

@ArchI3Chris: only Python version has changed, or WeeChat version?
If only the latest WeeChat version is crashing and not an older one, we could try to find the guilty commit in WeeChat.

@ArchI3Chris
Copy link

I honestly can't contribute to that, since I don't perform scheduled and frequent upgrades and don't know which version I've been using before and if it worked with that one. But if it all goes back to anotify in first place, my suggestion would be, to take a look at the creation time of the issue and maybe start there? If it is anotify in all cases, chances are, the problem started with some change in regards a bit before the time when the issue has been reported.

@ArchI3Chris: only Python version has changed, or WeeChat version?
If only the latest WeeChat version is crashing and not an older one, we could try to find the guilty commit in WeeChat.

@weechatter
Copy link
Contributor

WeeChat 3.1-dev (git: v3.0-71-gdc8df133e)
python: 3.8.6 and 3.7.3
lnotify v0.3.5
anotify v1.0.2

no crash with this config

@ArchI3Chris
Copy link

Hmm... I just played around a bit with it. First I upgraded from lnotify 0.3.1 to 0.3.5. Same problem. Then I edited the configuration, since I made minor changes (added two notify-send arguments). An oversight (curly bracket at the end) led to an error in the lnotify file, which led to WeeChat starting. The two together still crash WeeChat. But using only one at a time, after correcting the mistake, WeeChat would start in BOTH cases. BUT... while I don't get any errors with lnotify now, with anotify now I get an output inside WeeChat that says: in line 406 in the a_notify function the name notify2 (priority=notify2.URGENCY_LOW) is not defined. Pynotify is installed btw.

@flashcode
Copy link
Member

Not able to reproduce, I close the issue.
Feel free to comment or open another one if the crash is still happening.

@flashcode flashcode removed the waiting info Waiting for info from author of issue label Nov 13, 2021
@flashcode flashcode added the not reproduced The problem can not be reproduced label Nov 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Unexpected problem or unintended behavior not reproduced The problem can not be reproduced
Projects
None yet
Development

No branches or pull requests

6 participants