Skip to content

assertion normal_exited() failed related to paged builtin help #8308

@floam

Description

@floam

I can't reproduce this every time, but if I try it several times I'll eventually hit it. This is git master on a macOS 12 beta, ARM64.

step 1: run status features --help
step 2: hit q to exit pager
step 3: goto step 1

edit: see repro steps in below comment

-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               fish [34801]
Path:                  /usr/local/bin/fish
Identifier:            fish
Version:               ???
Code Type:             ARM-64 (Native)
Parent Process:        fish [34225]
Responsible:           Terminal [24599]
User ID:               501

Date/Time:             2021-09-21 17:16:24.7651 -0700
OS Version:            macOS 12.0 (21A5506j)
Report Version:        12
Anonymous UUID:        F75D0472-B9D1-9892-BAD5-5F373A254B12

Sleep/Wake UUID:       7BCF49D7-FE9E-4664-BDFD-E742F2C6F721

Time Awake Since Boot: 320000 seconds
Time Since Wake:       2263 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
Assertion failed: (normal_exited() && "Process is not normal exited"), function exit_code, file proc.h, line 121.


Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	       0x1b29b5a58 __pthread_kill + 8
1   libsystem_pthread.dylib       	       0x1b29e9218 pthread_kill + 288
2   libsystem_c.dylib             	       0x1b2926314 abort + 164
3   libsystem_c.dylib             	       0x1b292572c __assert_rtn + 300
4   fish                          	       0x10269f5d4 builtin_print_help(parser_t&, io_streams_t const&, wchar_t const*, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >*) (.cold.1) + 40
5   fish                          	       0x1025bb8a0 builtin_print_help(parser_t&, io_streams_t const&, wchar_t const*, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >*) + 668
6   fish                          	       0x1025d9304 builtin_status(parser_t&, io_streams_t&, wchar_t const**) + 660
7   fish                          	       0x1025bbd14 builtin_run(parser_t&, std::__1::vector<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&, io_streams_t&) + 448
8   fish                          	       0x10261da44 std::__1::__function::__func<get_performer_for_builtin(process_t*, job_t*, io_chain_t const&, std::__1::shared_ptr<output_stream_t> const&, std::__1::shared_ptr<output_stream_t> const&)::$_4, std::__1::allocator<get_performer_for_builtin(process_t*, job_t*, io_chain_t const&, std::__1::shared_ptr<output_stream_t> const&, std::__1::shared_ptr<output_stream_t> const&)::$_4>, proc_status_t (parser_t&)>::operator()(parser_t&) + 392
9   fish                          	       0x102619dd8 exec_process_in_job(parser_t&, process_t*, std::__1::shared_ptr<job_t> const&, io_chain_t const&, autoclose_pipes_t, autoclose_pipes_t const&, bool) + 4424
10  fish                          	       0x1026182ec exec_job(parser_t&, std::__1::shared_ptr<job_t> const&, io_chain_t const&) + 884
11  fish                          	       0x10265f350 parse_execution_context_t::run_1_job(ast::job_t const&, block_t const*) + 1576
12  fish                          	       0x102659194 parse_execution_context_t::run_job_conjunction(ast::job_conjunction_t const&, block_t const*) + 144
13  fish                          	       0x10265fbf0 parse_execution_context_t::eval_node(ast::job_list_t const&, block_t const*) + 284
14  fish                          	       0x102668db8 eval_res_t parser_t::eval_node<ast::job_list_t>(std::__1::shared_ptr<parsed_source_t const> const&, ast::job_list_t const&, io_chain_t const&, std::__1::shared_ptr<job_group_t> const&, block_type_t) + 716
15  fish                          	       0x10266851c parser_t::eval(std::__1::shared_ptr<parsed_source_t const> const&, io_chain_t const&, std::__1::shared_ptr<job_group_t> const&, block_type_t) + 64
16  fish                          	       0x102668358 parser_t::eval(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > const&, io_chain_t const&, std::__1::shared_ptr<job_group_t> const&, block_type_t) + 124
17  fish                          	       0x102683c5c reader_read(parser_t&, int, io_chain_t const&) + 2032
18  fish                          	       0x1025a3ba0 main + 5800
19  dyld                          	       0x1028590f4 start + 520

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething that's not working as intended

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions