[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45951] trunk/blender/intern/ghost/intern/ GHOST_NDOFManagerX11.cpp: ndof: avoid potential buffer overflow in libspnav
Mike Erwin
significant.bit at gmail.com
Wed Apr 25 03:24:31 CEST 2012
Revision: 45951
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45951
Author: merwin
Date: 2012-04-25 01:24:29 +0000 (Wed, 25 Apr 2012)
Log Message:
-----------
ndof: avoid potential buffer overflow in libspnav
Modified Paths:
--------------
trunk/blender/intern/ghost/intern/GHOST_NDOFManagerX11.cpp
Modified: trunk/blender/intern/ghost/intern/GHOST_NDOFManagerX11.cpp
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_NDOFManagerX11.cpp 2012-04-25 00:59:49 UTC (rev 45950)
+++ trunk/blender/intern/ghost/intern/GHOST_NDOFManagerX11.cpp 2012-04-25 01:24:29 UTC (rev 45951)
@@ -75,28 +75,32 @@
bool GHOST_NDOFManagerX11::processEvents()
{
- GHOST_TUns64 now = m_system.getMilliSeconds();
-
bool anyProcessed = false;
- spnav_event e;
- while (spnav_poll_event(&e)) {
- switch (e.type) {
- case SPNAV_EVENT_MOTION:
- {
- /* convert to blender view coords */
- short t[3] = {e.motion.x, e.motion.y, -e.motion.z};
- short r[3] = {-e.motion.rx, -e.motion.ry, e.motion.rz};
- updateTranslation(t, now);
- updateRotation(r, now);
- break;
+ if (m_available) {
+ GHOST_TUns64 now = m_system.getMilliSeconds();
+
+ spnav_event e;
+ while (spnav_poll_event(&e)) {
+ switch (e.type) {
+ case SPNAV_EVENT_MOTION:
+ {
+ /* convert to blender view coords */
+ short t[3] = {e.motion.x, e.motion.y, -e.motion.z};
+ short r[3] = {-e.motion.rx, -e.motion.ry, e.motion.rz};
+
+ updateTranslation(t, now);
+ updateRotation(r, now);
+ break;
+ }
+ case SPNAV_EVENT_BUTTON:
+ updateButton(e.button.bnum, e.button.press, now);
+ break;
}
- case SPNAV_EVENT_BUTTON:
- updateButton(e.button.bnum, e.button.press, now);
- break;
+ anyProcessed = true;
}
- anyProcessed = true;
}
+
return anyProcessed;
}
More information about the Bf-blender-cvs
mailing list