Emulator Issues #6288
closedAccess Violation when making a new memory card.
0%
Description
Steps to reproduce:
-
Open Dolphin and go to Tools -> Memcard Manager (GC)
-
Hit browse
-
In the file name box, enter a file name that is not present in the current directory that is being viewed.
-
Dolphin will kick up a prompt asking if you would like to create a new memcard. Hit "Yes"
-
Another prompt comes up asking if you would like to format it as ASCII or SHIFT-JIS. Format it as ASCII.
-
It will now crash.
I've tried to solve this problem today but came up with nothing.
Though, when running in Visual Studio, it breaks at line 338 in GCMemCard.cpp
"if (BE32(CurrentDir->Dir[i].Gamecode)!= 0xFFFFFFFF)"
I have a feeling either CurrentDir or Dir is not being initialized correctly. This is also evidenced by the fact that when I open up the info for CurrentDir in Visual Studio, there is "<bad ptr>" tagged on almost everything.
Updated by Lioncash almost 11 years ago
To provide extra info which may help.
The GetNumFiles() call which causes all of this is called on line 631 of MemcardManager.cpp.
Updated by lpfaint99 almost 11 years ago
I'll take a look, I'm sure it was working the last time I made a change to it
Updated by lpfaint99 almost 11 years ago
i wasn't able to identify when it started, but it's an easy fix.
Updated by Lioncash almost 11 years ago
Seems like it still doesn't fix it. I still get this when I try to make a memory card manually:
Updated by Lioncash almost 11 years ago
Also, bad pointers errywhere.
http://i.imgur.com/4Vvvbe5.png
http://i.imgur.com/iByfRId.png
Updated by lpfaint99 almost 11 years ago
if the CurrentDir pointer is bad, everything inside it will be garbage.
it works just fine with builds compiled myself, and the buildbot on dolphin-emu.org
i tested both 32 and 64 bit
can you reproduce it with the builds from the website? any special setup you have/changes to the gcmemcard source?
Updated by Lioncash almost 11 years ago
Ah, I suppose that error only gets thrown when debugging in VS or something. It doesn't happen when I run it without the debugger.
Updated by Lioncash almost 11 years ago
Ah ok, got it to work. Must have forgot to do a rebuild or something. It's all good now; sorry about that.
Updated by lpfaint99 almost 11 years ago
Great, I couldn't get it to occur even with the debugger running
Updated by rachelbryk almost 11 years ago
- Status changed from Invalid to Fixed
This definitely used to happen, but seems fixed now.