Project

General

Profile

Actions

Emulator Issues #7022

closed

Dolphin always crashes after stopping emulation and booting a different wii game.

Added by kostamarino almost 11 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

[READ THIS: https://forums.dolphin-emu.org/showthread.php?pid=276132 <<<
Your answers are there!]
[Leave the questions as they are and answer them in the next line]
[Remove lines written inside brackets [], but nothing else]

Game Name?
All Wii games (doesn't happen with gc games)

Game ID?

What's the problem? Describe what went wrong in few words.
Dolphin crashes after stopping emulation and booting a different wii game. Gc games aren't affected and it happens with both hw video backends.

What did you expect to happen instead?
Dolphin not to crash.

What steps will reproduce the problem?
[Don't assume we have ever played the game and know any level names. Be as
specific as possible.]
1.Load any wii game.
2.Stop emulation.
3.Load any different wii game. Experience a hard dolphin crash.

Dolphin 3.5 and 3.5-367 are old versions of Dolphin that have
known issues and bugs, so don't report issues about them and test the
latest Dolphin version first.
Which versions of Dolphin did you test on?
Dolphin-x64-v40-824

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?
Yes, Dolphin-x64-v40-807 seems to not have it. Haven't pinpoint the exact rev that the issue starts though.

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
Windows 7 x64, 2500k, 560 ti

Are you using the 32 or the 64 bit version of Dolphin?
64

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)
[Upload big files to a hosting service and post links here!]

[Do not attach files to this issue. Upload them to another site and
link here. Use imgur.com for images and pastie.org for logs.]

Actions #1

Updated by kostamarino almost 11 years ago

After a bit of testing dolphin-master-4.0-822-x64 merge pull request #48 from Parlane/SetupWiiMemory_tidy seems to be the culprit.

https://github.com/dolphin-emu/dolphin/commit/64e01ec763d21915e7166e625f8a3e85b46fbcbb

Actions #2

Updated by wespipes69 almost 11 years ago

I've been getting a 100% crash after stopping emulation when I'm using a real wiimote. Fine if it's emulated. Happening for about a month. Maybe related. Win x64.

Actions #3

Updated by tomman almost 11 years ago

Can confirm that reverting the already mentioned commit fixes the issue... partially.

Background: Updated today to git-master, but none of the games on my list with Japanese names (in my case, a bunch of Wii Puyo Puyos) were booting (instead I got "terminate called after throwing an instance of 'std::bad_alloc'" and a crash). Checked the bugtracker, found this, and decided to revert the commit in question.

Now all of my japanese games boot, I can stop them and pick another game... except for Sonic 4 (a Wiiware/WAD game). Most of the times the game does NOT boot (I get a black screen, or an emulator crash!) after having used another game, except if the former was a GameCube game.

The flow would be like this:

  • Wii game-> Sonic 4: no boot or crash
  • Wii game-> GC game-> Sonic 4: OK
  • Wii game-> Wii game: OK
  • Wii game-> Wii game-> Sonic 4: no boot/crash
    (can't really tell if only Sonic 4 or all Wiiware stuff is affected, as I only own one WAD game in my library)

I'm using a real Wiimote, but having it or not makes no difference.

Actions #4

Updated by tomman almost 11 years ago

BTW, the GDB backtraces are completely useless. In fact, attaching GDB only makes Dolphin to segfault as soon as I load a game!

Actions #5

Updated by parlane almost 11 years ago

kosta in future tag me on these please.

Actions #6

Updated by parlane almost 11 years ago

This doesn't happen on euro games. Hehe :)

Actions #7

Updated by tomman almost 11 years ago

Of course, I'm the only one who has this weird Puyo Puyo fetish :P

Euro and USA Wii-disc games do boot OK in any of the versions.

Actions #8

Updated by parlane almost 11 years ago

I'd expect usa games to crash too :)

Actions #9

Updated by parlane almost 11 years ago

I put the fix in here:
https://github.com/dolphin-emu/dolphin/pull/50

Specifically this commit:
https://github.com/Parlane/dolphin/commit/179cd747966497824699485a0d12aa04882c9260

It's a very simple change and if you build from source then you will be able to let me know if that fixes your problems :)

Actions #10

Updated by tomman almost 11 years ago

Surprise surprise, the one-line fix FIXES things :)

Everything is zen again, and nothing is crashing Dolphin/my Puyo Puyos/Sonic 4 this time.

Actions #11

Updated by parlane almost 11 years ago

Awesome :) I'm just waiting on code review to get the fix through :)

Actions #12

Updated by parlane almost 11 years ago

  • Status changed from New to Fixed

delroth fixed this by reverting the offending commit.

Actions #13

Updated by tomman over 10 years ago

This started happening again here. Dunno exactly at which revision (I hadn't used Dolphin lately). Getting a backtrace under GDB hasn't been exactly easy (starting Dolphin under GDB leads to a instacrash after loading any game), but after loading a game, stopping it, attaching GDB, and trying to load another game I get this:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7faceac0d700 (LWP 8285)]
__strcmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209
209 ../sysdeps/x86_64/multiarch/../strcmp.S: No existe el fichero o el directorio.
(gdb) bt
#0 __strcmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209
#1 0x00007fad1270016c in ?? () from /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#2 0x00007fad1268a9f7 in ?? () from /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#3 0x00000000006cccd8 in ciface::SDL::Joystick::Joystick(_SDL_Joystick*, int, unsigned int) ()
#4 0x00000000006cd1d4 in ciface::SDL::Init(std::vector<ciface::Core::Device*, std::allocatorciface::Core::Device* >&) ()
#5 0x00000000006c261d in ControllerInterface::Initialize() ()
#6 0x000000000059d9c1 in Pad::Initialize(void*) ()
#7 0x0000000000550fdc in Core::EmuThread() ()
#8 0x00007fad0f0719d0 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#9 0x00007fad1242a0ca in start_thread (arg=0x7faceac0d700) at pthread_create.c:309
#10 0x00007fad0e5cc06d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Debian Jessie AMD64, real wiimote, same hardware as my last bug reports here.

Actions

Also available in: Atom PDF