forked from bartvdbraak/blender
Fix #28265: blender 2.59 not starting on OS X with old ndof driver.
Patch by Jens Verwiebe.
This commit is contained in:
parent
feb7afe671
commit
37f9d916fa
@ -43,6 +43,7 @@ public:
|
||||
// whether multi-axis functionality is available (via the OS or driver)
|
||||
// does not imply that a device is plugged in or being used
|
||||
bool available();
|
||||
bool oldDRV();
|
||||
|
||||
private:
|
||||
unsigned short m_clientID;
|
||||
|
@ -143,7 +143,7 @@ GHOST_NDOFManagerCocoa::GHOST_NDOFManagerCocoa(GHOST_System& sys)
|
||||
|
||||
// printf("ndof: client id = %d\n", m_clientID);
|
||||
|
||||
if (SetConnexionClientButtonMask != NULL) {
|
||||
if (oldDRV()) {
|
||||
has_old_driver = false;
|
||||
SetConnexionClientButtonMask(m_clientID, kConnexionMaskAllButtons);
|
||||
}
|
||||
@ -176,5 +176,14 @@ extern "C" {
|
||||
return InstallConnexionHandlers != NULL;
|
||||
// this means that the driver is installed and dynamically linked to blender
|
||||
}
|
||||
|
||||
bool GHOST_NDOFManagerCocoa::oldDRV()
|
||||
{
|
||||
extern OSErr SetConnexionClientButtonMask() __attribute__((weak_import));
|
||||
// Make the linker happy for the framework check (see link below for more info)
|
||||
// http://developer.apple.com/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.html
|
||||
return SetConnexionClientButtonMask != NULL;
|
||||
// this means that the driver has this symbol
|
||||
}
|
||||
}
|
||||
#endif // WITH_INPUT_NDOF
|
||||
|
Loading…
Reference in New Issue
Block a user