Closed
Bug 533034
Opened 15 years ago
Closed 15 years ago
Valgrind: Errors in the IPDL TestShmem
Categories
(Core :: IPC, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: cjones, Assigned: cjones)
References
Details
Attachments
(1 file)
4.47 KB,
patch
|
Details | Diff | Splinter Review |
==28884== Use of uninitialised value of size 8 ==28884== at 0x68FECCC: __gnu_cxx::hashtable<std::pair<int const, mozilla::ipc::SharedMemory*>, int, __gnu_cxx::hash<int>, std::_Select1st<std::pair<int const, mozilla::ipc::SharedMemory*> >, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::find(int const&) (hashtable.h:512) ==28884== by 0x68FED74: __gnu_cxx::hash_map<int, mozilla::ipc::SharedMemory*, __gnu_cxx::hash<int>, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::find(int const&) (hash_map:213) ==28884== by 0x68FFDB6: IDMap<mozilla::ipc::SharedMemory>::AddWithID(mozilla::ipc::SharedMemory*, int) (id_map.h:58) ==28884== by 0x68FDC4E: mozilla::_ipdltest::PTestShmemParent::RegisterShmem(mozilla::ipc::SharedMemory*) (PTestShmemParent.cpp:221) ==28884== by 0x68FDE44: mozilla::_ipdltest::PTestShmemParent::AllocShmem(unsigned long, mozilla::ipc::Shmem*) (PTestShmemParent.cpp:201) ==28884== by 0x69CD9E1: mozilla::_ipdltest::TestShmemParent::Main() (TestShmem.cpp:17) ==28884== by 0x69CACA5: mozilla::_ipdltest::IPDLUnitTestMain(void*) (IPDLUnitTests.cpp:295) ==28884== by 0x578D6A9: (anonymous namespace)::MainFunctionRunnable::Run() (nsEmbedFunctions.cpp:377) ==28884== by 0x6A49A2F: nsThread::ProcessNextEvent(int, int*) (nsThread.cpp:527) ==28884== by 0x69DFD89: NS_ProcessNextEvent_P(nsIThread*, int) (nsThreadUtils.cpp:250) ==28884== by 0x68BCDD5: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (MessagePump.cpp:118) ==28884== by 0x695C40A: MessageLoop::RunInternal() (message_loop.cc:211) ==28884== ==28884== Use of uninitialised value of size 8 ==28884== at 0x68FFC5E: __gnu_cxx::hashtable<std::pair<int const, mozilla::ipc::SharedMemory*>, int, __gnu_cxx::hash<int>, std::_Select1st<std::pair<int const, mozilla::ipc::SharedMemory*> >, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::find_or_insert(std::pair<int const, mozilla::ipc::SharedMemory*> const&) (hashtable.h:797) ==28884== by 0x68FFD67: __gnu_cxx::hash_map<int, mozilla::ipc::SharedMemory*, __gnu_cxx::hash<int>, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::operator[](int const&) (hash_map:221) ==28884== by 0x68FFE2E: IDMap<mozilla::ipc::SharedMemory>::AddWithID(mozilla::ipc::SharedMemory*, int) (id_map.h:59) ==28884== by 0x68FDC4E: mozilla::_ipdltest::PTestShmemParent::RegisterShmem(mozilla::ipc::SharedMemory*) (PTestShmemParent.cpp:221) ==28884== by 0x68FDE44: mozilla::_ipdltest::PTestShmemParent::AllocShmem(unsigned long, mozilla::ipc::Shmem*) (PTestShmemParent.cpp:201) ==28884== by 0x69CD9E1: mozilla::_ipdltest::TestShmemParent::Main() (TestShmem.cpp:17) ==28884== by 0x69CACA5: mozilla::_ipdltest::IPDLUnitTestMain(void*) (IPDLUnitTests.cpp:295) ==28884== by 0x578D6A9: (anonymous namespace)::MainFunctionRunnable::Run() (nsEmbedFunctions.cpp:377) ==28884== by 0x6A49A2F: nsThread::ProcessNextEvent(int, int*) (nsThread.cpp:527) ==28884== by 0x69DFD89: NS_ProcessNextEvent_P(nsIThread*, int) (nsThreadUtils.cpp:250) ==28884== by 0x68BCDD5: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (MessagePump.cpp:118) ==28884== by 0x695C40A: MessageLoop::RunInternal() (message_loop.cc:211) ==28884== ==28884== Use of uninitialised value of size 8 ==28884== at 0x68FFD03: __gnu_cxx::hashtable<std::pair<int const, mozilla::ipc::SharedMemory*>, int, __gnu_cxx::hash<int>, std::_Select1st<std::pair<int const, mozilla::ipc::SharedMemory*> >, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::find_or_insert(std::pair<int const, mozilla::ipc::SharedMemory*> const&) (hashtable.h:805) ==28884== by 0x68FFD67: __gnu_cxx::hash_map<int, mozilla::ipc::SharedMemory*, __gnu_cxx::hash<int>, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::operator[](int const&) (hash_map:221) ==28884== by 0x68FFE2E: IDMap<mozilla::ipc::SharedMemory>::AddWithID(mozilla::ipc::SharedMemory*, int) (id_map.h:59) ==28884== by 0x68FDC4E: mozilla::_ipdltest::PTestShmemParent::RegisterShmem(mozilla::ipc::SharedMemory*) (PTestShmemParent.cpp:221) ==28884== by 0x68FDE44: mozilla::_ipdltest::PTestShmemParent::AllocShmem(unsigned long, mozilla::ipc::Shmem*) (PTestShmemParent.cpp:201) ==28884== by 0x69CD9E1: mozilla::_ipdltest::TestShmemParent::Main() (TestShmem.cpp:17) ==28884== by 0x69CACA5: mozilla::_ipdltest::IPDLUnitTestMain(void*) (IPDLUnitTests.cpp:295) ==28884== by 0x578D6A9: (anonymous namespace)::MainFunctionRunnable::Run() (nsEmbedFunctions.cpp:377) ==28884== by 0x6A49A2F: nsThread::ProcessNextEvent(int, int*) (nsThread.cpp:527) ==28884== by 0x69DFD89: NS_ProcessNextEvent_P(nsIThread*, int) (nsThreadUtils.cpp:250) ==28884== by 0x68BCDD5: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (MessagePump.cpp:118) ==28884== by 0x695C40A: MessageLoop::RunInternal() (message_loop.cc:211) ==28884== ==28884== Conditional jump or move depends on uninitialised value(s) ==28884== at 0x68C18E9: mozilla::ipc::Shmem::Shmem(mozilla::ipc::Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead, mozilla::ipc::SharedMemory*, int) (Shmem.cpp:147) ==28884== by 0x68FDEC5: mozilla::_ipdltest::PTestShmemParent::AllocShmem(unsigned long, mozilla::ipc::Shmem*) (PTestShmemParent.cpp:207) ==28884== by 0x69CD9E1: mozilla::_ipdltest::TestShmemParent::Main() (TestShmem.cpp:17) ==28884== by 0x69CACA5: mozilla::_ipdltest::IPDLUnitTestMain(void*) (IPDLUnitTests.cpp:295) ==28884== by 0x578D6A9: (anonymous namespace)::MainFunctionRunnable::Run() (nsEmbedFunctions.cpp:377) ==28884== by 0x6A49A2F: nsThread::ProcessNextEvent(int, int*) (nsThread.cpp:527) ==28884== by 0x69DFD89: NS_ProcessNextEvent_P(nsIThread*, int) (nsThreadUtils.cpp:250) ==28884== by 0x68BCDD5: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (MessagePump.cpp:118) ==28884== by 0x695C40A: MessageLoop::RunInternal() (message_loop.cc:211) ==28884== by 0x695C422: MessageLoop::RunHandler() (message_loop.cc:194) ==28884== by 0x695C483: MessageLoop::Run() (message_loop.cc:168) ==28884== by 0x68207C8: nsBaseAppShell::Run() (nsBaseAppShell.cpp:174) ==28884== ==28884== Thread 2: ==28884== Syscall param socketcall.sendmsg(msg.msg_iov[i]) points to uninitialised byte(s) ==28884== at 0x4E3A54B: (within /lib/libpthread-2.9.so) ==28884== by 0x69BD5A4: IPC::Channel::ChannelImpl::ProcessOutgoingMessages() (ipc_channel_posix.cc:598) ==28884== by 0x69BD83E: IPC::Channel::ChannelImpl::Send(IPC::Message*) (ipc_channel_posix.cc:654) ==28884== by 0x69BD87C: IPC::Channel::Send(IPC::Message*) (ipc_channel_posix.cc:791) ==28884== by 0x68B84C0: mozilla::ipc::AsyncChannel::OnSend(IPC::Message*) (AsyncChannel.cpp:410) ==28884== by 0x68B95D6: void DispatchToMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message*), IPC::Message*>(mozilla::ipc::AsyncChannel*, void (mozilla::ipc::AsyncChannel::*)(IPC::Message*), Tuple1<IPC::Message*> const&) (tuple.h:393) ==28884== by 0x68B9613: RunnableMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message*), Tuple1<IPC::Message*> >::Run() (task.h:307) ==28884== by 0x695B93B: MessageLoop::RunTask(Task*) (message_loop.cc:326) ==28884== by 0x695BD87: MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) (message_loop.cc:334) ==28884== by 0x695C088: MessageLoop::DoWork() (message_loop.cc:434) ==28884== by 0x69ADC43: base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) (message_pump_libevent.cc:309) ==28884== by 0x695C40A: MessageLoop::RunInternal() (message_loop.cc:211) ==28884== Address 0x11ec3920 is 40 bytes inside a block of size 64 alloc'd ==28884== at 0x4C278AE: malloc (vg_replace_malloc.c:207) ==28884== by 0x4C27A37: realloc (vg_replace_malloc.c:429) ==28884== by 0x6968361: Pickle::Resize(unsigned long) (pickle.cc:423) ==28884== by 0x696860A: Pickle::Pickle(int) (pickle.cc:38) ==28884== by 0x6999EEF: IPC::Message::Message(int, unsigned short, IPC::Message::PriorityValue) (ipc_message.cc:31) ==28884== by 0x6900004: mozilla::ipc::__internal__ipdl__ShmemCreated::__internal__ipdl__ShmemCreated(int, base::FileDescriptor const&, int const&, unsigned long const&) (ProtocolUtils.h:110) ==28884== by 0x68FDE70: mozilla::_ipdltest::PTestShmemParent::AllocShmem(unsigned long, mozilla::ipc::Shmem*) (PTestShmemParent.cpp:202) ==28884== by 0x69CD9E1: mozilla::_ipdltest::TestShmemParent::Main() (TestShmem.cpp:17) ==28884== by 0x69CACA5: mozilla::_ipdltest::IPDLUnitTestMain(void*) (IPDLUnitTests.cpp:295) ==28884== by 0x578D6A9: (anonymous namespace)::MainFunctionRunnable::Run() (nsEmbedFunctions.cpp:377) ==28884== by 0x6A49A2F: nsThread::ProcessNextEvent(int, int*) (nsThread.cpp:527) ==28884== by 0x69DFD89: NS_ProcessNextEvent_P(nsIThread*, int) (nsThreadUtils.cpp:250) ==28884== ==28884== Thread 1: ==28884== Conditional jump or move depends on uninitialised value(s) ==28884== at 0x68FEE46: __gnu_cxx::hashtable<std::pair<int const, mozilla::ipc::SharedMemory*>, int, __gnu_cxx::hash<int>, std::_Select1st<std::pair<int const, mozilla::ipc::SharedMemory*> >, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::find(int const&) const (hashtable.h:524) ==28884== by 0x68FEEA2: __gnu_cxx::hash_map<int, mozilla::ipc::SharedMemory*, __gnu_cxx::hash<int>, std::equal_to<int>, std::allocator<mozilla::ipc::SharedMemory*> >::find(int const&) const (hash_map:217) ==28884== by 0x68FEEE5: IDMap<mozilla::ipc::SharedMemory>::Lookup(int) const (id_map.h:76) ==28884== by 0x68FDAB3: mozilla::_ipdltest::PTestShmemParent::LookupShmem(int) (PTestShmemParent.cpp:214) ==28884== by 0x68FE0B3: mozilla::_ipdltest::PTestShmemParent::OnMessageReceived(IPC::Message const&) (PTestShmemParent.cpp:101) ==28884== by 0x68B8B2C: mozilla::ipc::AsyncChannel::OnDispatchMessage(IPC::Message const&) (AsyncChannel.cpp:196) ==28884== by 0x68B9401: void DispatchToMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), IPC::Message>(mozilla::ipc::AsyncChannel*, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), Tuple1<IPC::Message> const&) (tuple.h:393) ==28884== by 0x68B943D: RunnableMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), Tuple1<IPC::Message> >::Run() (task.h:307) ==28884== by 0x695B93B: MessageLoop::RunTask(Task*) (message_loop.cc:326) ==28884== by 0x695BD87: MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) (message_loop.cc:334) ==28884== by 0x695C088: MessageLoop::DoWork() (message_loop.cc:434) ==28884== by 0x68BD237: mozilla::ipc::DoWorkRunnable::Run() (MessagePump.cpp:75) The following leak is known, and a TODO. ==28884== ==28884== 48 bytes in 1 blocks are definitely lost in loss record 13 of 45 ==28884== at 0x4C2726C: operator new(unsigned long) (vg_replace_malloc.c:230) ==28884== by 0x68C1512: mozilla::ipc::Shmem::CreateSegment(unsigned long, base::FileDescriptor) (Shmem.cpp:333) ==28884== by 0x68C180A: mozilla::ipc::Shmem::Alloc(mozilla::ipc::Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead, unsigned long, bool) (Shmem.cpp:214) ==28884== by 0x68FDDAE: mozilla::_ipdltest::PTestShmemParent::AllocShmem(unsigned long, mozilla::ipc::Shmem*) (PTestShmemParent.cpp:193) ==28884== by 0x69CD9E1: mozilla::_ipdltest::TestShmemParent::Main() (TestShmem.cpp:17) ==28884== by 0x69CACA5: mozilla::_ipdltest::IPDLUnitTestMain(void*) (IPDLUnitTests.cpp:295) ==28884== by 0x578D6A9: (anonymous namespace)::MainFunctionRunnable::Run() (nsEmbedFunctions.cpp:377) ==28884== by 0x6A49A2F: nsThread::ProcessNextEvent(int, int*) (nsThread.cpp:527) ==28884== by 0x69DFD89: NS_ProcessNextEvent_P(nsIThread*, int) (nsThreadUtils.cpp:250) ==28884== by 0x68BCDD5: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (MessagePump.cpp:118) ==28884== by 0x695C40A: MessageLoop::RunInternal() (message_loop.cc:211) ==28884== by 0x695C422: MessageLoop::RunHandler() (message_loop.cc:194) ==28884==
Assignee | ||
Comment 1•15 years ago
|
||
This looks like it's due to |mNextShmemId| not being initialized by shmem-enabled C++ classes. Easy fix.
Assignee | ||
Comment 2•15 years ago
|
||
After fixing the uninit member, I get ==29556== Invalid read of size 8 ==29556== at 0x69BC7D4: IPC::Channel::set_listener(IPC::Channel::Listener*) (ipc_channel_posix.cc:787) ==29556== by 0x68B852E: mozilla::ipc::AsyncChannel::Clear() (AsyncChannel.cpp:292) ==29556== by 0x68B859C: mozilla::ipc::AsyncChannel::NotifyChannelClosed() (AsyncChannel.cpp:262) ==29556== by 0x68B8A85: mozilla::ipc::AsyncChannel::Close() (AsyncChannel.cpp:156) ==29556== by 0x68FDEEA: mozilla::_ipdltest::PTestShmemParent::Close() (PTestShmemParent.cpp:58) ==29556== by 0x69CD6A7: mozilla::_ipdltest::TestShmemParent::RecvTake(mozilla::ipc::Shmem&, unsigned long const&) (TestShmem.cpp:47) ==29556== by 0x68FDCE0: mozilla::_ipdltest::PTestShmemParent::OnMessageReceived(IPC::Message const&) (PTestShmemParent.cpp:111) ==29556== by 0x68B87C0: mozilla::ipc::AsyncChannel::OnDispatchMessage(IPC::Message const&) (AsyncChannel.cpp:196) ==29556== by 0x68B9095: void DispatchToMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), IPC::Message>(mozilla::ipc::AsyncChannel*, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), Tuple1<IPC::Message> const&) (tuple.h:393) ==29556== by 0x68B90D1: RunnableMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), Tuple1<IPC::Message> >::Run() (task.h:307) ==29556== by 0x695B447: MessageLoop::RunTask(Task*) (message_loop.cc:326) ==29556== by 0x695B893: MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) (message_loop.cc:334) ==29556== Address 0x118a1518 is 8 bytes inside a block of size 16 free'd ==29556== at 0x4C260AD: operator delete(void*) (vg_replace_malloc.c:342) ==29556== by 0x69BC845: IPC::Channel::~Channel() (ipc_channel_posix.cc:776) ==29556== by 0x698F89F: scoped_ptr<IPC::Channel>::~scoped_ptr() (scoped_ptr.h:72) ==29556== by 0x698F35F: ChildProcessHost::~ChildProcessHost() (child_process_host.cc:85) ==29556== by 0x68BA691: mozilla::ipc::GeckoChildProcessHost::~GeckoChildProcessHost() (GeckoChildProcessHost.cpp:85) ==29556== by 0x69CB50D: mozilla::_ipdltest::IPDLUnitTestSubprocess::~IPDLUnitTestSubprocess() (IPDLUnitTestSubprocess.cpp:53) ==29556== by 0x69CA377: (anonymous namespace)::DeleteSubprocess(MessageLoop*) (IPDLUnitTests.cpp:219) ==29556== by 0x69CAFC4: void DispatchToFunction<void (*)(MessageLoop*), MessageLoop*>(void (*)(MessageLoop*), Tuple1<MessageLoop*> const&) (tuple.h:449) ==29556== by 0x69CAFF5: RunnableFunction<void (*)(MessageLoop*), Tuple1<MessageLoop*> >::Run() (task.h:415) ==29556== by 0x695B447: MessageLoop::RunTask(Task*) (message_loop.cc:326) ==29556== by 0x695B893: MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) (message_loop.cc:334) ==29556== by 0x695BB94: MessageLoop::DoWork() (message_loop.cc:434) ==29556== ==29556== Invalid write of size 8 ==29556== at 0x69BF3A6: IPC::Channel::ChannelImpl::set_listener(IPC::Channel::Listener*) (ipc_channel_posix.h:30) ==29556== by 0x69BC7E0: IPC::Channel::set_listener(IPC::Channel::Listener*) (ipc_channel_posix.cc:787) ==29556== by 0x68B852E: mozilla::ipc::AsyncChannel::Clear() (AsyncChannel.cpp:292) ==29556== by 0x68B859C: mozilla::ipc::AsyncChannel::NotifyChannelClosed() (AsyncChannel.cpp:262) ==29556== by 0x68B8A85: mozilla::ipc::AsyncChannel::Close() (AsyncChannel.cpp:156) ==29556== by 0x68FDEEA: mozilla::_ipdltest::PTestShmemParent::Close() (PTestShmemParent.cpp:58) ==29556== by 0x69CD6A7: mozilla::_ipdltest::TestShmemParent::RecvTake(mozilla::ipc::Shmem&, unsigned long const&) (TestShmem.cpp:47) ==29556== by 0x68FDCE0: mozilla::_ipdltest::PTestShmemParent::OnMessageReceived(IPC::Message const&) (PTestShmemParent.cpp:111) ==29556== by 0x68B87C0: mozilla::ipc::AsyncChannel::OnDispatchMessage(IPC::Message const&) (AsyncChannel.cpp:196) ==29556== by 0x68B9095: void DispatchToMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), IPC::Message>(mozilla::ipc::AsyncChannel*, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), Tuple1<IPC::Message> const&) (tuple.h:393) ==29556== by 0x68B90D1: RunnableMethod<mozilla::ipc::AsyncChannel, void (mozilla::ipc::AsyncChannel::*)(IPC::Message const&), Tuple1<IPC::Message> >::Run() (task.h:307) ==29556== by 0x695B447: MessageLoop::RunTask(Task*) (message_loop.cc:326) ==29556== Address 0x11eba098 is 104 bytes inside a block of size 6,416 free'd ==29556== at 0x4C260AD: operator delete(void*) (vg_replace_malloc.c:342) ==29556== by 0x69C07AA: IPC::Channel::ChannelImpl::~ChannelImpl() (ipc_channel_posix.h:27) ==29556== by 0x69BC82A: IPC::Channel::~Channel() (ipc_channel_posix.cc:775) ==29556== by 0x698F89F: scoped_ptr<IPC::Channel>::~scoped_ptr() (scoped_ptr.h:72) ==29556== by 0x698F35F: ChildProcessHost::~ChildProcessHost() (child_process_host.cc:85) ==29556== by 0x68BA691: mozilla::ipc::GeckoChildProcessHost::~GeckoChildProcessHost() (GeckoChildProcessHost.cpp:85) ==29556== by 0x69CB50D: mozilla::_ipdltest::IPDLUnitTestSubprocess::~IPDLUnitTestSubprocess() (IPDLUnitTestSubprocess.cpp:53) ==29556== by 0x69CA377: (anonymous namespace)::DeleteSubprocess(MessageLoop*) (IPDLUnitTests.cpp:219) ==29556== by 0x69CAFC4: void DispatchToFunction<void (*)(MessageLoop*), MessageLoop*>(void (*)(MessageLoop*), Tuple1<MessageLoop*> const&) (tuple.h:449) ==29556== by 0x69CAFF5: RunnableFunction<void (*)(MessageLoop*), Tuple1<MessageLoop*> >::Run() (task.h:415) ==29556== by 0x695B447: MessageLoop::RunTask(Task*) (message_loop.cc:326) ==29556== by 0x695B893: MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) (message_loop.cc:334) which is disquieting.
Assignee | ||
Updated•15 years ago
|
Assignee | ||
Comment 4•15 years ago
|
||
Pushed http://hg.mozilla.org/projects/electrolysis/rev/c77da7450ba1
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•