Bug 2263638 - android-tools quit unexpectedly | reason: fastboot killed by SIGABRT
Summary: android-tools quit unexpectedly | reason: fastboot killed by SIGABRT
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: android-tools
Version: 39
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Ivan Afonichev
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-02-10 11:25 UTC by Maaf
Modified: 2024-03-12 19:09 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: ---
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Maaf 2024-02-10 11:25:16 UTC
I use fastboot to flash android firmware/ROM.
But an error appears and causes the session to end.

In the terminal it appears:
terminate called after throwing an instance of 'std::out_of_range'
   what(): basic_string::compare: __pos (which is 917456) > this->size() (which is 0)

Problem reporting application says:
android-tools quit unexpectedly

reason fastboot killed by SIGABRT

backtrace
: No such file or directory.
[New LWP 2096]
Downloading separate debug info for system-supplied DSO at 0x7ffdfa3b9000...
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `fastboot flash super ./images/super.img'.
Program terminated with signal SIGABRT, Aborted.
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
44	      return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;

Thread 1 (Thread 0x7fa9d0902740 (LWP 2096)):
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
        tid = <optimized out>
        ret = 0
        pd = <optimized out>
        old_mask = {__val = {4611686018427387904}}
        ret = <optimized out>
#1  0x00007fa9d04ae8a3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
No locals.
#2  0x00007fa9d045c8ee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
        ret = <optimized out>
#3  0x00007fa9d04448ff in __GI_abort () at abort.c:79
        save_stage = 1
        act = {__sigaction_handler = {sa_handler = 0x20, sa_sigaction = 0x20}, sa_mask = {__val = {140367322108016, 140367322117475, 1, 140728801608832, 140367320722079, 140728801608864, 1, 10, 566, 5, 140728801610384, 140728801608864, 140367320725777, 140367322108016, 140367322117344, 140728801608912}}, sa_flags = -800440693, sa_restorer = 0x558b6ce013b8}
#4  0x00007fa9d06a4d19 in __gnu_cxx::__verbose_terminate_handler () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95
        terminating = true
        t = <optimized out>
#5  0x00007fa9d06b4f4c in __cxxabiv1::__terminate (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
No locals.
#6  0x00007fa9d06b4fb7 in std::terminate () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:58
No locals.
#7  0x00007fa9d06b5218 in __cxxabiv1::__cxa_throw (obj=<optimized out>, tinfo=0x7fa9d0844fe8 <typeinfo for std::out_of_range>, dest=0x7fa9d06cb700 <std::out_of_range::~out_of_range()>) at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:98
        globals = <optimized out>
        header = 0x558b6ce01300
#8  0x00007fa9d06a7765 in std::__throw_out_of_range_fmt (__fmt=__fmt@entry=0x558b6b55b948 "%s: __pos (which is %zu) > this->size() (which is %zu)") at ../../../../../libstdc++-v3/src/c++11/functexcept.cc:101
        __len = 54
        __alloca_size = 566
        __s = 0x7ffdfa3ac550 "basic_string::compare: __pos (which is 917456) > this->size() (which is 0)"
        __ap = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7ffdfa3ac890, reg_save_area = 0x7ffdfa3ac7b0}}
#9  0x0000558b6b4de392 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_check (this=0x7ffdfa3ac900, __s=0x558b6b55b1d3 "basic_string::compare", __pos=917456) at /usr/include/c++/13/bits/basic_string.h:389
No locals.
#10 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare (__n1=<optimized out>, __s=0x558b6b55b1e9 "AVBf", __pos=917456, this=0x7ffdfa3ac900) at /usr/include/c++/13/bits/basic_string.h:3386
        __osize = <optimized out>
        __len = <optimized out>
        __r = <optimized out>
        __osize = <optimized out>
        __len = <optimized out>
        __r = <optimized out>
#11 copy_avb_footer (buf=0x7ffdfa3aca90, partition="super") at /usr/src/debug/android-tools-34.0.4-4.fc39.x86_64/vendor/core/fastboot/fastboot.cpp:1214
        partition_size = 7516192768
        data = ""
        footer_offset = 917456
        tmp_fd_template = "g6i4\216U\000\000\305\315\331\304\321\330\317\001-size:sup"
        fd = {fd_ = 32681}
        partition_size = <optimized out>
        data = <optimized out>
        footer_offset = <optimized out>
        tmp_fd_template = <optimized out>
        fd = <optimized out>
#12 flash_buf (partition="super", buf=0x7ffdfa3aca90, apply_vbmeta=false) at /usr/src/debug/android-tools-34.0.4-4.fc39.x86_64/vendor/core/fastboot/fastboot.cpp:1246
No locals.
#13 0x0000558b6b4e3c3a in do_flash (pname=<optimized out>, fname=<optimized out>, apply_vbmeta=<optimized out>, fp=<optimized out>) at /usr/src/debug/android-tools-34.0.4-4.fc39.x86_64/vendor/core/fastboot/fastboot.cpp:1512
        buf = {type = FB_BUFFER_SPARSE, files = std::vector of length 39, capacity 64 = {std::unique_ptr<sparse_file> = {get() = 0x558b6cdffc80}, std::unique_ptr<sparse_file> = {get() = 0x558b6cdfff10}, std::unique_ptr<sparse_file> = {get() = 0x558b6cdfff60}, std::unique_ptr<sparse_file> = {get() = 0x558b6cdfffb0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00000}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00050}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce000a0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce000f0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00140}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00190}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce001e0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00230}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00280}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce002d0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00320}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00370}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce003c0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00410}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00460}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce004b0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00500}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00550}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce005a0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce005f0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00640}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00690}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce006e0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00730}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00780}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce007d0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00820}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00870}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce008c0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00910}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00960}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce009b0}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00a00}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00a50}, std::unique_ptr<sparse_file> = {get() = 0x558b6ce00aa0}}, sz = 917520, fd = {fd_ = 3}, image_size = 7516192768}
        flash_pname = "super"
#14 0x0000558b6b4dab33 in std::function<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::operator()(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const (__args#0="super", this=0x7ffdfa3ad240) at /usr/include/c++/13/bits/std_function.h:591
No locals.
#15 do_for_partition(const std::string &, const std::string &, const std::function<void(const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)> &, bool) (part="super", slot="", func=..., force_slot=force_slot@entry=true) at /usr/src/debug/android-tools-34.0.4-4.fc39.x86_64/vendor/core/fastboot/fastboot.cpp:1381
        has_slot = "no"
        flash = <optimized out>
#18 0x0000558b6b53ebcd in FastBootTool::Main(int, char**) [clone .isra.0] (argc=<optimized out>, argv=<optimized out>, this=<optimized out>) at /usr/src/debug/android-tools-34.0.4-4.fc39.x86_64/vendor/core/fastboot/fastboot.cpp:2447
        pname = "super"
        fname = "./images/super.img"
        task = {<Task> = {_vptr.Task = 0x558b6b57d6e8 <vtable for FlashTask+16>}, pname_ = "super", fname_ = "./images/super.img", slot_ = "", apply_vbmeta_ = false, fp_ = 0x558b6cd97380}
        command = "flash"
        fp = std::unique_ptr<FlashingPlan> = {get() = 0x558b6cd97380}
        longindex = 0
        next_active = ""
        longopts = {{name = 0x558b6b568ef8 "base", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b568efd "cmdline", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b568f05 "disable-verification", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b568f1a "disable-verity", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b568f29 "disable-super-optimization", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b568f44 "force", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b568f4a "fs-options", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b568f86 "header-version", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b5690fc "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x558b6b568f99 "kernel-offset", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b568fa7 "os-patch-level", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b568fec "os-version", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b56900a "page-size", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b569026 "ramdisk-offset", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b569387 "set-active", has_arg = 2, flag = 0x0, val = 97}, {name = 0x558b6b569035 "skip-reboot", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b569041 "skip-secondary", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b569109 "slot", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b56905b "tags-offset", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b568f95 "dtb", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b569050 "dtb-offset", has_arg = 1, flag = 0x0, val = 0}, {name = 0x558b6b569067 "unbuffered", has_arg = 0, flag = 0x0, val = 0}, {name = 0x558b6b569392 "verbose", has_arg = 0, flag = 0x0, val = 118}, {name = 0x558b6b5680ee "version", has_arg = 0, flag = 0x0, val = 0}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
        c = <optimized out>
        transport = <optimized out>
        driver_callbacks = {prolog = {<std::_Maybe_unary_or_binary_function<void, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>> = {<std::unary_function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d4220 <Status(std::string const&)>, _M_const_object = 0x558b6b4d4220 <Status(std::string const&)>, _M_function_pointer = 0x558b6b4d4220 <Status(std::string const&)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d4220 <Status(std::string const&)>}, _M_pod_data = " BMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de630 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de620 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>}, epilog = {<std::_Maybe_unary_or_binary_function<void, int>> = {<std::unary_function<int, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d4b20 <Epilog(int)>, _M_const_object = 0x558b6b4d4b20 <Epilog(int)>, _M_function_pointer = 0x558b6b4d4b20 <Epilog(int)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d4b20 <Epilog(int)>}, _M_pod_data = " KMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de680 <std::_Function_handler<void (int), void (*)(int)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de670 <std::_Function_handler<void (int), void (*)(int)>::_M_invoke(std::_Any_data const&, int&&)>}, info = {<std::_Maybe_unary_or_binary_function<void, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>> = {<std::unary_function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d41d0 <InfoMessage(std::string const&)>, _M_const_object = 0x558b6b4d41d0 <InfoMessage(std::string const&)>, _M_function_pointer = 0x558b6b4d41d0 <InfoMessage(std::string const&)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d41d0 <InfoMessage(std::string const&)>}, _M_pod_data = "\320AMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de630 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de620 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>}, text = {<std::_Maybe_unary_or_binary_function<void, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>> = {<std::unary_function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d4200 <TextMessage(std::string const&)>, _M_const_object = 0x558b6b4d4200 <TextMessage(std::string const&)>, _M_function_pointer = 0x558b6b4d4200 <TextMessage(std::string const&)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d4200 <TextMessage(std::string const&)>}, _M_pod_data = "\000BMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de630 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de620 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>}}
        fastboot_driver = {<fastboot::IFastBootDriver> = {_vptr.IFastBootDriver = 0x558b6b57d750 <vtable for fastboot::FastBootDriver+16>}, static RESP_TIMEOUT = 30, static MAX_DOWNLOAD_SIZE = 4294967295, static TRANSPORT_CHUNK_SIZE = 1024, transport_ = 0x558b6cd96350, error_ = "", prolog_ = {<std::_Maybe_unary_or_binary_function<void, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>> = {<std::unary_function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d4220 <Status(std::string const&)>, _M_const_object = 0x558b6b4d4220 <Status(std::string const&)>, _M_function_pointer = 0x558b6b4d4220 <Status(std::string const&)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d4220 <Status(std::string const&)>}, _M_pod_data = " BMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de630 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de620 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>}, epilog_ = {<std::_Maybe_unary_or_binary_function<void, int>> = {<std::unary_function<int, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d4b20 <Epilog(int)>, _M_const_object = 0x558b6b4d4b20 <Epilog(int)>, _M_function_pointer = 0x558b6b4d4b20 <Epilog(int)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d4b20 <Epilog(int)>}, _M_pod_data = " KMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de680 <std::_Function_handler<void (int), void (*)(int)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de670 <std::_Function_handler<void (int), void (*)(int)>::_M_invoke(std::_Any_data const&, int&&)>}, info_ = {<std::_Maybe_unary_or_binary_function<void, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>> = {<std::unary_function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d41d0 <InfoMessage(std::string const&)>, _M_const_object = 0x558b6b4d41d0 <InfoMessage(std::string const&)>, _M_function_pointer = 0x558b6b4d41d0 <InfoMessage(std::string const&)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d41d0 <InfoMessage(std::string const&)>}, _M_pod_data = "\320AMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de630 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de620 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>}, text_ = {<std::_Maybe_unary_or_binary_function<void, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>> = {<std::unary_function<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x558b6b4d4200 <TextMessage(std::string const&)>, _M_const_object = 0x558b6b4d4200 <TextMessage(std::string const&)>, _M_function_pointer = 0x558b6b4d4200 <TextMessage(std::string const&)>, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x558b6b4d4200 <TextMessage(std::string const&)>}, _M_pod_data = "\000BMk\213U\000\000\000\000\000\000\000\000\000"}, _M_manager = 0x558b6b4de630 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x558b6b4de620 <std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&), void (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>}, disable_checks_ = false}
        start = 1707556961.4901249
        tasks = std::vector of length 0, capacity 0
        args = std::vector of length 0, capacity 3
        old_transport = <optimized out>
#19 0x00007fa9d044614a in __libc_start_call_main (main=main@entry=0x558b6b4d3af0 <main(int, char**)>, argc=argc@entry=4, argv=argv@entry=0x7ffdfa3adcc8) at ../sysdeps/nptl/libc_start_call_main.h:58
        self = <optimized out>
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140728801615048, -3172669012106274359, 4, 0, 140367326806016, 94057289732504, -3172669012360029751, -3220004830667466295}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x4, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 4}}}
        not_first_call = <optimized out>
#20 0x00007fa9d044620b in __libc_start_main_impl (main=0x558b6b4d3af0 <main(int, char**)>, argc=4, argv=0x7ffdfa3adcc8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdfa3adcb8) at ../csu/libc-start.c:360
No locals.
#21 0x0000558b6b4d4005 in _start ()
No symbol table info available.

Reported as:
https://retrace.fedoraproject.org/faf/reports/903597/

Reproducible: Always

Steps to Reproduce:
1. Execute Xiaomi fastboot ROM script "sh flash_all.sh"
Actual Results:  
ROM flashing stopped.

Expected Results:  
ROM flashing successful.

Message:
terminate called after throwing an instance of 'std::out_of_range'
   what(): basic_string::compare: __pos (which is 917456) > this->size() (which is 0)

Comment 1 Maaf 2024-02-19 18:31:11 UTC
No follow up?

android-tools-34.0.4-4.fc39 has a bug.
Downgrading (dnf downgrade android-tools) to android-tools-33.0.3p1-1.fc38 fixed the problem, btw.

Comment 2 Muhammad Hasan Firdaus 2024-03-12 19:09:45 UTC
Same here, terminate called after throwing an instance of 'std::out_of_range', when flashing MIUI using fastboot command from fedora packages. Error not happen when using platform-tools_r35.0.0-linux.zip from https://developer.android.com/tools/releases/platform-tools


Note You need to log in before you can comment on or make changes to this bug.