View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001671aMuleGUIpublic2011-05-22 04:382011-05-22 13:26
Reportermoo 
Assigned Tosturedman 
PrioritynormalSeveritycrashReproducibilitysometimes
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product VersionSVN 
Target Version2.3.1Fixed in Version2.3.1 
Summary0001671: Creation of ED2K links with source or crypt options broken with wx 2.9
Descriptioni have UTF-8/Chinese file names in Incoming directory (already downloaded). after a few minutes or hours running, it seems aMuleD screw up the file names in "upload" list and i can only see "???" as filename for the first 2 upload slow while other filename is empty

i check the error output of amuleweb (logged using logger -t "amuleweb")
amuleweb: Assertion failed: ECTag.cpp:GetIPv4Data:640: Assertion 'm_dataType == EC_TAGTYPE_UNKNOWN' failed.
amuleweb: Backtrace follows:
amuleweb: [4] wxOnAssert(char const*, int, char const*, char const*, char const*) in /usr/lib/libwx_baseu-2.9.so.1[0xb72fee6b]
amuleweb: [5] CECTag::GetIPv4Data() const in amuleweb[0x80cfdf8]
amuleweb: [6] php_get_amule_stats(PHP_VALUE_NODE*) in amuleweb[0x80c78c9]
amuleweb: [7] php_run_func_call in amuleweb[0x80b7fdc]
amuleweb: [8] php_expr_eval in amuleweb[0x80b81c7]
amuleweb: [9] php_expr_eval in amuleweb[0x80b8634]
amuleweb: [10] php_execute in amuleweb[0x80b9181]
amuleweb: [11] CPhpFilter::CPhpFilter(CWebServerBase*, CSession*, char const*, CWriteStrBuffer*) in amuleweb[0x80ce800]
amuleweb: [12] CScriptWebServer::ProcessPhpRequest(char const*, CSession*, long&) in amuleweb[0x80553e5]
amuleweb: [13] CScriptWebServer::ProcessURL(ThreadData) in amuleweb[0x8064bea]
amuleweb: [14] CWebSocket::OnRequestReceived(char*, char*, unsigned int) in amuleweb[0x8082975]
amuleweb: [15] CWebSocket::OnInput() in amuleweb[0x8084e60]
amuleweb: [16] wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const in /usr/lib/libwx_baseu-2.9.so.1[0xb72f923f]
amuleweb: [17] wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const in /usr/lib/libwx_baseu-2.9.so.1[0xb72f929b]
amuleweb: [18] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb75e7234]
amuleweb: [19] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) in /usr/lib/libwx_baseu-2.9.so.1[0xb75e73bc]
amuleweb: [20] wxEvtHandler::TryHereOnly(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb75e7748]
amuleweb: [21] wxEvtHandler::ProcessEventLocally(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb75e77b7]
amuleweb: [22] wxEvtHandler::ProcessEvent(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb75e785d]
amuleweb: [23] wxEvtHandler::ProcessPendingEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb75e8219]
amuleweb: [24] wxAppConsoleBase::ProcessPendingEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb72ffc56]
amuleweb: [25] wxEventLoopManual::ProcessEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb7389031]
amuleweb: [26] wxEventLoopManual::Run() in /usr/lib/libwx_baseu-2.9.so.1[0xb73890f8]
amuleweb: [27] wxAppConsoleBase::MainLoop() in /usr/lib/libwx_baseu-2.9.so.1[0xb72fe215]
amuleweb: [28] wxAppConsoleBase::OnRun() in /usr/lib/libwx_baseu-2.9.so.1[0xb72f90e4]
amuleweb: [29] CaMuleExternalConnector::ConnectAndRun(wxString const&, wxString const&) in amuleweb[0x80936cd]
amuleweb: [30] CamulewebApp::OnRun() in amuleweb[0x8076059]
amuleweb: [31] wxEntry(int&, wchar_t**) in /usr/lib/libwx_baseu-2.9.so.1[0xb74209fb]
amuleweb: [32] wxEntry(int&, char**) in /usr/lib/libwx_baseu-2.9.so.1[0xb7420aa7]
amuleweb: [33] main in amuleweb[0x807051b]
amuleweb: [34] __libc_start_main in /lib/libc.so.6[0xb6f5bca4]
amuleweb: [35] _start in amuleweb[0x8050df1]
Additional InformationaMuleD SVN 10562
wxWidgets v2.9.1
TagsNo tags attached.
Fixed in Revision10568
Operating SystemAny
Attached Filespatch file icon 002-CreateED2kLink.patch [^] (536 bytes) 2011-05-22 05:54 [Show Content]

- Relationships

-  Notes
(0003567)
moo (reporter)
2011-05-22 04:43

sorry, the title and backstrace looks like another problem
this is the correct error log

amuled: Assertion failed: ./src/common/unichar.cpp:FromHi8bit:53: Assertion 'Assert failure' failed. invalid multibyte character
amuled: Backtrace follows:
amuled: [4] wxOnAssert(char const*, int, char const*, char const*, char const*) in /usr/lib/libwx_baseu-2.9.so.1[0xb6e39e6b]
amuled: [5] wxUniChar::FromHi8bit(char) in /usr/lib/libwx_baseu-2.9.so.1[0xb7035ecf]
amuled: [6] CamuleAppCommon::CreateED2kLink(CAbstractFile const*, bool, bool, bool) in amuled[0x82295ed]
amuled: [7] CEC_PartFile_Tag::CEC_PartFile_Tag(CPartFile const*, EC_DETAIL_LEVEL, CValueMap*) in amuled[0x80fbc83]
amuled: [8] Get_EC_Response_GetDownloadQueue(CECPacket const*, CFileEncoderMap&) in ExternalConn.cpp:0
amuled: [9] CECServerSocket::ProcessRequest2(CECPacket const*) in amuled[0x810d909]
amuled: [10] CECServerSocket::OnPacketReceived(CECPacket const*, unsigned int) in amuled[0x811950c]
amuled: [11] CECSocket::OnInput() in amuled[0x83b3921]
amuled: [12] wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const in /usr/lib/libwx_baseu-2.9.so.1[0xb6e3423f]
amuled: [13] wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const in /usr/lib/libwx_baseu-2.9.so.1[0xb6e3429b]
amuled: [14] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb7122234]
amuled: [15] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) in /usr/lib/libwx_baseu-2.9.so.1[0xb71223bc]
amuled: [16] wxEvtHandler::TryHereOnly(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb7122748]
amuled: [17] wxEvtHandler::ProcessEventLocally(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb71227b7]
amuled: [18] wxEvtHandler::ProcessEvent(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb712285d]
amuled: [19] wxEvtHandler::ProcessPendingEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb7123219]
amuled: [20] wxAppConsoleBase::ProcessPendingEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb6e3ac56]
amuled: [21] wxEventLoopManual::ProcessEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb6ec4031]
amuled: [22] wxEventLoopManual::Run() in /usr/lib/libwx_baseu-2.9.so.1[0xb6ec40a8]
amuled: [23] wxAppConsoleBase::MainLoop() in /usr/lib/libwx_baseu-2.9.so.1[0xb6e39215]
amuled: [24] wxAppConsoleBase::OnRun() in /usr/lib/libwx_baseu-2.9.so.1[0xb6e340e4]
amuled: [25] CamuleDaemonApp::OnRun() in amuled[0x806fabb]
amuled: [26] wxEntry(int&, wchar_t**) in /usr/lib/libwx_baseu-2.9.so.1[0xb6f5b9fb]
amuled: [27] wxEntry(int&, char**) in /usr/lib/libwx_baseu-2.9.so.1[0xb6f5baa7]
amuled: [28] main in amuled[0x806cc2b]
amuled: [29] __libc_start_main in /lib/libc.so.6[0xb6b3fca4]
amuled: [30] _start in amuled[0x806c791]
(0003568)
moo (reporter)
2011-05-22 05:18

ok here's a better backtrace generated with -O0 -g

amuled: Assertion failed: ./src/common/unichar.cpp:FromHi8bit:53: Assertion 'Assert failure' failed. invalid multibyte character
amuled: Backtrace follows:
amuled: [4] wxOnAssert(char const*, int, char const*, char const*, char const*) in /usr/lib/libwx_baseu-2.9.so.1[0xb6f60e6b]
amuled: [5] wxUniChar::FromHi8bit(char) in /usr/lib/libwx_baseu-2.9.so.1[0xb715cecf]
amuled: [6] wxUniChar::From8bit(char) in unichar.h:173
amuled: [7] wxUniChar in unichar.h:36
amuled: [8] wxString::append(unsigned int, unsigned char) in string.h:2550
amuled: [9] wxString::operator<<(unsigned char) in string.h:2002
amuled: [10] CamuleAppCommon::CreateED2kLink(CAbstractFile const*, bool, bool, bool) in amuleAppCommon.cpp:167
amuled: [11] CEC_SharedFile_Tag in ECSpecialCoreTags.cpp:250
amuled: [12] CEC_PartFile_Tag in ECSpecialCoreTags.cpp:155
amuled: [13] Get_EC_Response_GetDownloadQueue in ExternalConn.cpp:769
amuled: [14] CECServerSocket::ProcessRequest2(CECPacket const*) in ExternalConn.cpp:1393
amuled: [15] CECServerSocket::OnPacketReceived(CECPacket const*, unsigned int) in ExternalConn.cpp:270
amuled: [16] CECSocket::OnInput() in ECSocket.cpp:404
amuled: [17] wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const in /usr/lib/libwx_baseu-2.9.so.1[0xb6f5b23f]
amuled: [18] wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const in /usr/lib/libwx_baseu-2.9.so.1[0xb6f5b29b]
amuled: [19] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb7249234]
amuled: [20] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) in /usr/lib/libwx_baseu-2.9.so.1[0xb72493bc]
amuled: [21] wxEvtHandler::TryHereOnly(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb7249748]
amuled: [22] wxEvtHandler::ProcessEventLocally(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb72497b7]
amuled: [23] wxEvtHandler::ProcessEvent(wxEvent&) in /usr/lib/libwx_baseu-2.9.so.1[0xb724985d]
amuled: [24] wxEvtHandler::ProcessPendingEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb724a219]
amuled: [25] wxAppConsoleBase::ProcessPendingEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb6f61c56]
amuled: [26] wxEventLoopManual::ProcessEvents() in /usr/lib/libwx_baseu-2.9.so.1[0xb6feb031]
amuled: [27] wxEventLoopManual::Run() in /usr/lib/libwx_baseu-2.9.so.1[0xb6feb0f8]
amuled: [28] wxAppConsoleBase::MainLoop() in /usr/lib/libwx_baseu-2.9.so.1[0xb6f60215]
amuled: [29] wxAppConsoleBase::OnRun() in /usr/lib/libwx_baseu-2.9.so.1[0xb6f5b0e4]
amuled: [30] CamuleDaemonApp::OnRun() in amuled.cpp:608
amuled: [31] wxEntry(int&, wchar_t**) in /usr/lib/libwx_baseu-2.9.so.1[0xb70829fb]
amuled: [32] wxEntry(int&, char**) in /usr/lib/libwx_baseu-2.9.so.1[0xb7082aa7]
amuled: [33] main in amuled.cpp:118
amuled: [34] __libc_start_main in /lib/libc.so.6[0xb6c66ca4]
amuled: [35] _start in amuled[0x806e961]
amuled: ./src/common/unichar.cpp(53): assert "Assert failure" failed in FromHi8bit(): invalid multibyte character


        } else {
            uint32 clientID = theApp->GetID();
            strURL << (uint8) clientID << wxT(".") <<
            (uint8)(clientID >> 8) << wxT(".") <<
            (uint8)(clientID >> 16) << wxT(".") <<
            (uint8)(clientID >> 24);
        }
uint8 is char, which is not a "int" type. no c++ string can output it as a number instead of char

instead of downcasting it to uint8, i suggest casting it with & 0xff
(0003569)
moo (reporter)
2011-05-22 05:20

can u pls change this bug summary to "Assertion failed: ./src/common/unichar.cpp:FromHi8bit:53: Assertion 'Assert failure' failed. invalid multibyte character"

i'll file another bug for "Assertion 'm_dataType == EC_TAGTYPE_UNKNOWN' failed."
(0003570)
sturedman (developer)
2011-05-22 13:16

This worked with wx 2.8, but not with 2.9. Thanks for reporting!

- Issue History
Date Modified Username Field Change
2011-05-22 04:38 moo New Issue
2011-05-22 04:38 moo Operating System => Any
2011-05-22 04:43 moo Note Added: 0003567
2011-05-22 05:18 moo Note Added: 0003568
2011-05-22 05:20 moo Note Added: 0003569
2011-05-22 05:54 moo File Added: 002-CreateED2kLink.patch
2011-05-22 13:16 sturedman Note Added: 0003570
2011-05-22 13:17 sturedman Assigned To => sturedman
2011-05-22 13:17 sturedman Status new => assigned
2011-05-22 13:17 sturedman Summary Assertion 'm_dataType == EC_TAGTYPE_UNKNOWN' failed. => Creation of ED2K links with source or crypt options broken with wx 2.9
2011-05-22 13:26 sturedman Fixed in Revision => 10568
2011-05-22 13:26 sturedman Status assigned => resolved
2011-05-22 13:26 sturedman Resolution open => fixed
2011-05-22 13:26 sturedman Fixed in Version => 2.3.1
2011-05-22 13:26 sturedman Target Version => 2.3.1


Copyright © 2000 - 2024 MantisBT Team
Powered by Mantis Bugtracker