Mercurial > sdl-ios-xcode
view docs/html/sdljoyballevent.html @ 4355:9b464226e541 SDL-1.2
Fixed bug #855
Ludwig Nussel 2009-10-18 06:31:52 PDT
an mprotect call was added to fix bug 528. However that results in a buffer
that allows writing and code execution. Ie the no-execute security features of
modern operating systems are defeated this way. Two mprotect calls are needed.
One to make the buffer executable but not writeable when done and another one
to make the buffer writeable again if the content needs to be changed.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 18 Oct 2009 17:31:37 +0000 |
parents | 355632dca928 |
children |
line wrap: on
line source
<HTML ><HEAD ><TITLE >SDL_JoyBallEvent</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ "><LINK REL="HOME" TITLE="SDL Library Documentation" HREF="index.html"><LINK REL="UP" TITLE="SDL Event Structures." HREF="eventstructures.html"><LINK REL="PREVIOUS" TITLE="SDL_JoyHatEvent" HREF="sdljoyhatevent.html"><LINK REL="NEXT" TITLE="SDL_ResizeEvent" HREF="sdlresizeevent.html"></HEAD ><BODY CLASS="REFENTRY" BGCOLOR="#FFF8DC" TEXT="#000000" LINK="#0000ee" VLINK="#551a8b" ALINK="#ff0000" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >SDL Library Documentation</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="sdljoyhatevent.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="sdlresizeevent.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="SDLJOYBALLEVENT" ></A >SDL_JoyBallEvent</H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN4396" ></A ><H2 >Name</H2 >SDL_JoyBallEvent -- Joystick trackball motion event structure</DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN4399" ></A ><H2 >Structure Definition</H2 ><PRE CLASS="PROGRAMLISTING" >typedef struct{ Uint8 type; Uint8 which; Uint8 ball; Sint16 xrel, yrel; } SDL_JoyBallEvent;</PRE ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN4402" ></A ><H2 >Structure Data</H2 ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN4404" ></A ><P ></P ><TABLE BORDER="0" CLASS="CALSTABLE" ><TBODY ><TR ><TD ALIGN="LEFT" VALIGN="TOP" ><TT CLASS="STRUCTFIELD" ><I >type</I ></TT ></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><TT CLASS="LITERAL" >SDL_JOYBALLMOTION</TT ></TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="TOP" ><TT CLASS="STRUCTFIELD" ><I >which</I ></TT ></TD ><TD ALIGN="LEFT" VALIGN="TOP" >Joystick device index</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="TOP" ><TT CLASS="STRUCTFIELD" ><I >ball</I ></TT ></TD ><TD ALIGN="LEFT" VALIGN="TOP" >Joystick trackball index</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="TOP" ><TT CLASS="STRUCTFIELD" ><I >xrel</I ></TT >, <TT CLASS="STRUCTFIELD" ><I >yrel</I ></TT ></TD ><TD ALIGN="LEFT" VALIGN="TOP" >The relative motion in the X/Y direction</TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN4425" ></A ><H2 >Description</H2 ><P ><SPAN CLASS="STRUCTNAME" >SDL_JoyBallEvent</SPAN > is a member of the <A HREF="sdlevent.html" ><SPAN CLASS="STRUCTNAME" >SDL_Event</SPAN ></A > union and is used when an event of type <TT CLASS="LITERAL" >SDL_JOYBALLMOTION</TT > is reported.</P ><P >A <TT CLASS="LITERAL" >SDL_JOYBALLMOTION</TT > event occurs when a user moves a trackball on the joystick. The field <TT CLASS="STRUCTFIELD" ><I >which</I ></TT > is the index of the joystick that reported the event and <TT CLASS="STRUCTFIELD" ><I >ball</I ></TT > is the index of the trackball (for a more detailed explaination see the <A HREF="joystick.html" >Joystick section</A >). Trackballs only return relative motion, this is the change in position on the ball since it was last polled (last cycle of the event loop) and it is stored in <TT CLASS="STRUCTFIELD" ><I >xrel</I ></TT > and <TT CLASS="STRUCTFIELD" ><I >yrel</I ></TT >.</P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN4439" ></A ><H2 >See Also</H2 ><P ><A HREF="sdlevent.html" ><SPAN CLASS="STRUCTNAME" >SDL_Event</SPAN ></A >, <A HREF="joystick.html" >Joystick Functions</A >, <A HREF="sdljoystickeventstate.html" ><TT CLASS="FUNCTION" >SDL_JoystickEventState</TT ></A >, <A HREF="sdljoystickgetball.html" ><TT CLASS="FUNCTION" >SDL_JoystickGetBall</TT ></A ></P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="sdljoyhatevent.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="sdlresizeevent.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >SDL_JoyHatEvent</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="eventstructures.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >SDL_ResizeEvent</TD ></TR ></TABLE ></DIV ></BODY ></HTML >