Commit 9ddb67d4a9 seems to have
introduced a segfault on Mac. The issue is that it this change casts
wxConvCurrent (which is a wxMBConvLibc) to a wxCSConv. This is an
unsafe cast because wxCSConv has member variables, but wxMBConvLibc
does not.
In LogWindow.cpp, the constructor for m_SJISConv is dereferencing one
of those member variables, which is a dereference of uninitialized
memory!
This CL reverts to the older (non-crashing) constructor, but keeps the
behavior the same.
Specifically:
- Look for clang and clang++ in the new (Xcode 4.3) location first,
then the old (Xcode 4.2) location.
- Look for sysroot in the new (Xcode 4.3) location first, then the old
(Xcode 4.2) location.
Sorry guys but I needed to disable stfs so that Pokepark 2 would not freeze(?). Feel free to put some effort in to finding out why, I do not understand Jit sorry.
This patch makes a few changes necessary for support for the new Wii
Remotes:
- For all OSes:
- Adds a new bool member variable m_motion_plus_inside to identify
the new Wii Remotes.
- If we have a new Wii Remote, use a head byte of 0xa2. We could
just change this behavior for all Wii Remotes, but an existing
comment suggests that would break 3rd party Wii Remotes.
- On Mac OS X:
- Expand the search criteria for the bluetooth scan. This is
necessary because the new Wii Remote identifies with minor class
kBluetoothDeviceClassMinorPeripheral2Gamepad, but the old Wii
Remotes use minor class
kBluetoothDeviceClassMinorPeripheral2Joystick (1).
- Send commands on the interrupt channel, not the control
channel. The new Wii Remotes require this; old ones are compatible
with this. Note: 3rd party Wii Remots are untested with this
change; the hope is they are still functional.
- Get the name of the bluetooth device and see if it ends in
"-TR". If so, set a member variable so we know it's the new kind
of Wii Remote.
This should fix issue 5011 for Mac OS X:
http://code.google.com/p/dolphin-emu/issues/detail?id=5011