http://bugs.winehq.org/show_bug.cgi?id=28087
Summary: foobar 2000: Crashes when editing tags (with configured media library) Product: Wine Version: 1.3.26 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: jonas.nyren@gmail.com
When a media library has been added (it does not happen without one) and you edit tags (Select some tracks and press alt+enter or right click and select edit tags) it crashes eventually. I'll try to give you a "how-to" to make it happen, please ask me if anything is unclear: Select a field (In my case i selected composer) Start entering a composer, followed by a semicolon and a space (this is how foobar 2000 separates multiple values) and enter another one. After a while foobar 2000 will now crash and bring up a requester asking you to send crash information to the developers. In this report the reason for crashing is always: Crash location: Module: libwine.so.1 Offset: 98B5h Symbol: "wine_compare_string" (+25h)
This did not happen in previous versions of wine. I would have checked exactly which version introduced it, but I had already cleaned out my package cache and it's of course not available any longer in the repositories (Arch linux). Console output does not appear to contain anything of interest. I tried with both foobar2000 v1.1.2 and v1.1.7 and the crash happens in both. Happens with both win32 and win64 archs.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #1 from Jonas Nyrén jonas.nyren@gmail.com 2011-08-14 22:05:22 CDT --- Found wine 1.3.25 and in this version the crash does not happen, so something changed here between 1.3.25 and 1.3.26.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #2 from Jonas Nyrén jonas.nyren@gmail.com 2011-08-15 00:27:40 CDT --- Created an attachment (id=35961) --> (http://bugs.winehq.org/attachment.cgi?id=35961) git bisect output
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #3 from Jonas Nyrén jonas.nyren@gmail.com 2011-08-15 00:28:24 CDT --- tried bisecting but many commits fail due to gettext errors, see above attached file for the information i could get.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #4 from Jonas Nyrén jonas.nyren@gmail.com 2011-08-15 00:50:39 CDT --- I am extremely sorry for all the noise on this bug. I should have checked ./configure --help first doh. when disabling gettextpo I can finally compile everytime and git bisect tells me:
2210e9bbf01a0d7758e2afa17dbf4338e1407e4a is the first bad commit
Again sorry for the noise, and hope this helps to resolve the crash.
http://bugs.winehq.org/show_bug.cgi?id=28087
Jonas Nyrén jonas.nyren@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |2210e9bbf01a0d7758e2afa17db | |f4338e1407e4a
http://bugs.winehq.org/show_bug.cgi?id=28087
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://www.foobar2000.org/f | |iles/5a233d682c3b2910c97a9c | |488508ec9d/foobar2000_v1.1. | |7.exe CC| |dank@kegel.com
--- Comment #5 from Dan Kegel dank@kegel.com 2011-08-15 07:20:18 CDT --- fwiw, that change is
Author: Nikolay Sivov nsivov@xxxxxxxxxxxxxxx Date: Sat Jul 23 12:40:56 2011 +0400 shell32/autocomplete: Autocompletion should be case insensitive for string comparison.
http://bugs.winehq.org/show_bug.cgi?id=28087
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression CC| |bunglehead@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com 2011-08-15 13:34:25 CDT --- Could you please be more specific about how to reproduce this?
Assume I have one mp3 file and fresh install of foobar, I need exact commands step by step.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #7 from Jonas Nyrén jonas.nyren@gmail.com 2011-08-15 18:44:56 CDT --- I'm having some difficulties prodivind you with a crash reproduction based on just one mp3.. This thing only seems to be triggered when you have a sufficiently big library (as for how big that is, I don't know. 450 tracks seems to be enough). I'm guessing it's because of some delays created by querying the database for autocompletion of tags.. Anyway, I shall try to give as detailed a description as I can.
1. Get foobar2000 from www.foobar2000.org (1.1.7 - latest stable is what i use, but the same crash happens with much older versions. 1.1.1 for example) 2. Install (standard install, launch it at the end of installer) 3. Just press OK in the quick layout dialog 4. Go to menu library->configure 5. remove the existing directory and add a directory where you have your mp3s, press OK --wait for it to scan the collection (you don't get any visual confirmation of when it's done other than status in library->configure changes from "initializing.." to "monitoring"-- 6. Bring up library->album list 7. add some tracks from the album list by drag and drop or right click->add to current playlist 8. Select the tracks in the playlist and hit alt+enter or right click->properties 9. Select composer field and enter Some values separated by semicolons ';' I.E. Somecomposer; Anothercomposer; Whathaveyou and here it will crash "eventually". For a large'ish collection (mine is around 10k tracks) it will almost always happen somewhere after the first semicolon. when I tested with a smaller collection (~450 tracks) it eventually happened after the second semicolon.. I can't really narrow it down to some specific case where it happens more than that :( But it's for certain that this crash is definitely related to autocompletion and it is also certain that it _does_ crash in 1.3.26 but _doesn't_ crash in versions up to and equal to 1.3.25.
I hope that helps, if not ask me for more info I can provide. The program monitors itself and when it crashes it sends up a "send bugreport" dialog so there is nothing (no backtrace, or meaningful messages) in the console output i can give you.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #8 from Dan Kegel dank@kegel.com 2011-08-15 21:21:13 CDT --- Maybe it's specific to your mp3 filenames? Try bisecting on mp3 files, maybe there's one particular filename that causes a crash?
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #9 from Nikolay Sivov bunglehead@gmail.com 2011-08-16 02:07:57 CDT --- Created an attachment (id=35980) --> (http://bugs.winehq.org/attachment.cgi?id=35980) patch
Please try to get a +tid,+shell log when it crashes for you with this trace patch.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #10 from Jonas Nyrén jonas.nyren@gmail.com 2011-09-01 00:41:36 CDT --- Created an attachment (id=36192) --> (http://bugs.winehq.org/attachment.cgi?id=36192) wine debug log
Here is the debug output after the patch has been applied, can't really see that it actually prints anything useful though. Hope it helps anyway.
http://bugs.winehq.org/show_bug.cgi?id=28087
Jonas Nyrén jonas.nyren@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #36192|0 |1 is obsolete| |
--- Comment #11 from Jonas Nyrén jonas.nyren@gmail.com 2011-09-01 00:59:12 CDT --- Created an attachment (id=36193) --> (http://bugs.winehq.org/attachment.cgi?id=36193) better debug log
Here is a proper debug output (forgot a coma between +tid+shell earlier, sorry about that). The whole output is huge (~109MB) so I only cut out the last 1000 lines, if you want more let me know.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #12 from Austin English austinenglish@gmail.com 2011-09-01 12:55:11 CDT --- (In reply to comment #11)
Created an attachment (id=36193)
--> (http://bugs.winehq.org/attachment.cgi?id=36193) [details]
better debug log
Here is a proper debug output (forgot a coma between +tid+shell earlier, sorry about that). The whole output is huge (~109MB) so I only cut out the last 1000 lines, if you want more let me know.
Compress with rzip?
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #13 from Nikolay Sivov bunglehead@gmail.com 2011-10-01 15:02:47 CDT --- I probably know why it crashes in libwine for you accessing past array boundaries, could you try to run with native shlwapi ?
http://bugs.winehq.org/show_bug.cgi?id=28087
ericc eric.cheminot@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |eric.cheminot@gmail.com
--- Comment #14 from ericc eric.cheminot@gmail.com 2011-10-10 14:38:37 CDT --- I have the same bug case (as the initial poster, with foobar2000). Basically when tracks are selected you can open the properties and when you start entering one, foobar2000 proposes completion from previous values. Always crashes.
I'd like to test, but what do you mean by "could you try to run with native shlwapi"?
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #15 from Nikolay Sivov bunglehead@gmail.com 2011-10-10 17:39:39 CDT --- (In reply to comment #14)
I'd like to test, but what do you mean by "could you try to run with native shlwapi"?
I mean using native shlwapi copied from win installation or with winetricks.
Anyway there's a mess in string comparison code, CompareStringW in wine will crash if provided length is big enough to access uninitialized memory, but it seems it should. Also it's a question if shlwapi helpers use kernel32 calls properly, this needs more tests, I'll hope i'll do some this week.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #16 from Nikolay Sivov bunglehead@gmail.com 2012-01-07 16:19:27 CST --- Created attachment 38294 --> http://bugs.winehq.org/attachment.cgi?id=38294 patch
Please try this patch.
http://bugs.winehq.org/show_bug.cgi?id=28087
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #35980|0 |1 is obsolete| |
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #17 from Nikolay Sivov bunglehead@gmail.com 2012-01-24 05:35:13 CST --- Jonas, please try with attached patch so we can fix it.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #18 from Jonas Nyrén jonas.nyren@gmail.com 2012-01-24 12:24:34 CST --- (In reply to comment #17)
Jonas, please try with attached patch so we can fix it.
I cannot apply that patch..
$ patch -p1 < 0005-Use-simple-helper-for-case-insensitive-strstr.patch patching file dlls/shell32/autocomplete.c Hunk #1 succeeded at 93 with fuzz 2 (offset -364 lines). Hunk #2 FAILED at 599. 1 out of 2 hunks FAILED -- saving rejects to file dlls/shell32/autocomplete.c.rej patching file dlls/shell32/shell32_main.h Hunk #1 succeeded at 191 (offset 2 lines). patching file dlls/shell32/shelllink.c
I tried with both 1.3.37 and git HEAD
http://bugs.winehq.org/show_bug.cgi?id=28087
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #38294|0 |1 is obsolete| |
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #19 from Nikolay Sivov bunglehead@gmail.com 2012-01-24 12:34:34 CST --- Created attachment 38535 --> http://bugs.winehq.org/attachment.cgi?id=38535 patch
(In reply to comment #18)
(In reply to comment #17)
Jonas, please try with attached patch so we can fix it.
I cannot apply that patch..
Sorry, I attached updated diff.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #20 from Jonas Nyrén jonas.nyren@gmail.com 2012-01-24 13:05:47 CST --- This seems to resolve the crash. I didn't see you had posted a new patch, so I went ahead and applied the other patch to 1.3.26 sources and that worked, and it doesn't crash anymore.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #21 from Nikolay Sivov bunglehead@gmail.com 2012-01-24 13:14:17 CST --- (In reply to comment #20)
This seems to resolve the crash. I didn't see you had posted a new patch, so I went ahead and applied the other patch to 1.3.26 sources and that worked, and it doesn't crash anymore.
Okay, I'll submit it soon. Keep running with it to do more testing just to be sure.
http://bugs.winehq.org/show_bug.cgi?id=28087
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #38535|0 |1 is obsolete| |
--- Comment #22 from Nikolay Sivov bunglehead@gmail.com 2012-01-26 00:54:17 CST --- Created attachment 38556 --> http://bugs.winehq.org/attachment.cgi?id=38556 patch
Could you test with this patch instead? Also please make sure autocompletion function really works as expected.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #23 from Nikolay Sivov bunglehead@gmail.com 2012-02-07 00:15:50 CST --- Jonas, could you test with current git? This should be fixed with c91e9db0cc76ce82600553ac301a2b894cb802ea.
http://bugs.winehq.org/show_bug.cgi?id=28087
--- Comment #24 from Nikolay Sivov bunglehead@gmail.com 2012-02-12 01:24:46 CST --- Please retest with 1.4-rc3 to confirm it's fixed.
http://bugs.winehq.org/show_bug.cgi?id=28087
Jerome Leclanche adys.wh@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |c91e9db0cc76ce82600553ac301 | |a2b894cb802ea Status|UNCONFIRMED |RESOLVED CC| |adys.wh@gmail.com Resolution| |FIXED
--- Comment #25 from Jerome Leclanche adys.wh@gmail.com 2012-02-26 13:18:38 CST --- Please reopen if it's not fixed.
http://bugs.winehq.org/show_bug.cgi?id=28087
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #26 from Alexandre Julliard julliard@winehq.org 2012-03-02 13:02:06 CST --- Closing bugs fixed in 1.4-rc6.
https://bugs.winehq.org/show_bug.cgi?id=28087
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Component|-unknown |shell32