Summary: | [Windows] crashes after creating the database (mysqle and mysql-server) | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Hatl <hatl> |
Component: | Collections/Local | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED NOT A BUG | ||
Severity: | crash | CC: | brandon.ml, casper.vandonderen, maximilian.kossick, mitchell |
Priority: | NOR | ||
Version: | 2.3-GIT | ||
Target Milestone: | 2.3.0 | ||
Platform: | Microsoft Windows | ||
OS: | Microsoft Windows | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Hatl
2009-08-15 12:28:41 UTC
No idea. Need a better backtrace (with line numbers), as I can't test it on a Windows machine. Sorry, thats currently not possible. If i compile amarok in debug mode i get the following: (gdb) run --debug Starting program: D:\k\bin/amarok.exe --debug [New thread 5028.0x970] Error: dll starting at 0x76c70000 not found. Error: dll starting at 0x75940000 not found. Error: dll starting at 0x76c70000 not found. Error: dll starting at 0x77280000 not found. Program received signal SIGSEGV, Segmentation fault. 0x00021780 in malloc () from D:\k\bin\mingwm10.dll (gdb) backtrace #0 0x00021780 in malloc () from D:\k\bin\mingwm10.dll #1 0x000210c3 in DllMainCRTStartup@12 () from D:\k\bin\mingwm10.dll #2 0x7755919c in ntdll!RtlAppendStringToString () from C:\Windows\system32\ntdll.dll #3 0x00020000 in ?? () #4 0x00000001 in ?? () #5 0x0027fd24 in ?? () #6 0x00000001 in ?? () #7 0x0027fad4 in ?? () #8 0x008d4ef8 in ?? () #9 0x0027fb1c in ?? () #10 0x775448e7 in wcstoui64 () from C:\Windows\system32\ntdll.dll #11 0x00021060 in lab () from D:\k\bin\mingwm10.dll Backtrace stopped: previous frame inner to this frame (corrupt stack?) I changed the code in MySqlServerCollection.cpp a bit. The output is very strange. "ret: 0" should be impossible! int ret; if( ret = mysql_query( m_db, QString( "ALTER DATABASE %1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci" ).arg( databaseName ).toUtf8() ) ) { reportError( QString( "ALTER DATABASE %1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci" ).arg( databaseName )); reportError( QString("ret: ") + QString::number(ret)); reportError( QString("MYSQL: ") + QString(mysql_error(m_db))); reportError( "Could not alter database charset/collation" ); } if( ret = mysql_query( m_db, QString( "USE %1" ).arg( databaseName ).toUtf8() ) ) { reportError( QString("ret: ") + QString::number(ret)); reportError( QString("MYSQL: ") + QString(mysql_error(m_db))); reportError( "Could not select database" ); } warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "ALTER DATABASE amarok DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci" warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "ret: 0" warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "MYSQL: " warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "Could not alter database charset/collation" warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "ret: 109622165" warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "MYSQL: " warning: Debug:amarok: [ERROR!] GREPME MySQL query failed! on "Could not select database" by the way: the amarok gui starts without a error if the mysql server is down. mysqle doesn't work. Subscribing Casper, seems we forgot that :( from what I've seen the crash is likely caused by a buffer overflow because if you put some random kDebug it will crash later, unfortunately I haven't found any way to detect memory leaks/buffer overflow with mingw. I think that this bug is also in msvc and linux but it doesn't trigger any crashes Any news on this? Adding keyword. @reporter: any recent backtraces for this? As Windows is not yet supported this cannot be a release blocker. Mass closing NEEDSINFO bugs with no comment for at least 31 days. Dear reporter, thanks for your feedback. For efficient bug triaging we need not only one report but also constant feedback about the status of an issue, at least when we ask for it. If your request is still valid in our latest release in your opinion (2.3.1 beta 1) DO NOT REOPEN THIS BUG but file a fresh one instead. Developers need clean bug reports to be able to work efficiently. Provide at least a step-by-step guide on how to reproduce the issue, a backtrace in case of a crash and debug output if appropriate. And remember: * One issue per bug. Small, clean bug reports are best to work on. * Search for duplicates. Hint: we have useful categories for that. :) -> RESOLVED INVALID |