Mercurial > sdl-ios-xcode
view docs/html/sdlupdaterects.html @ 3287:77f2f10b81a7
Fixed bug #570
SDL_SemWaitTimeout in src/thread/generic/SDL_syssem.c line 179 (SVN trunk):
--sem->count;
should be
if (retval == 0) {
--sem->count;
}
Without this, sem->count will underflow on timeout effectively breaking the
semaphore. It appears that the implementation has been wrong since the initial
revision.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 21 Sep 2009 07:35:06 +0000 |
parents | 355632dca928 |
children |
line wrap: on
line source
<HTML ><HEAD ><TITLE >SDL_UpdateRects</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="Video" HREF="video.html"><LINK REL="PREVIOUS" TITLE="SDL_UpdateRect" HREF="sdlupdaterect.html"><LINK REL="NEXT" TITLE="SDL_Flip" HREF="sdlflip.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="sdlupdaterect.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="sdlflip.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="SDLUPDATERECTS" ></A >SDL_UpdateRects</H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN1392" ></A ><H2 >Name</H2 >SDL_UpdateRects -- Makes sure the given list of rectangles is updated on the given screen.</DIV ><DIV CLASS="REFSYNOPSISDIV" ><A NAME="AEN1395" ></A ><H2 >Synopsis</H2 ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1396" ></A ><P ></P ><PRE CLASS="FUNCSYNOPSISINFO" >#include "SDL.h"</PRE ><P ><CODE ><CODE CLASS="FUNCDEF" >void <B CLASS="FSFUNC" >SDL_UpdateRects</B ></CODE >(SDL_Surface *screen, int numrects, SDL_Rect *rects);</CODE ></P ><P ></P ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN1402" ></A ><H2 >Description</H2 ><P >Makes sure the given list of rectangles is updated on the given screen. The rectangles must all be confined within the screen boundaries (no clipping is done).</P ><P >This function should not be called while <TT CLASS="PARAMETER" ><I >screen</I ></TT > is <A HREF="sdllocksurface.html" >locked</A >.</P ><DIV CLASS="NOTE" ><BLOCKQUOTE CLASS="NOTE" ><P ><B >Note: </B >It is adviced to call this function only once per frame, since each call has some processing overhead. This is no restriction since you can pass any number of rectangles each time.</P ><P >The rectangles are not automatically merged or checked for overlap. In general, the programmer can use his knowledge about his particular rectangles to merge them in an efficient way, to avoid overdraw.</P ></BLOCKQUOTE ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN1411" ></A ><H2 >See Also</H2 ><P ><A HREF="sdlupdaterect.html" ><TT CLASS="FUNCTION" >SDL_UpdateRect</TT ></A >, <A HREF="sdlrect.html" ><SPAN CLASS="STRUCTNAME" >SDL_Rect</SPAN ></A >, <A HREF="sdlsurface.html" ><SPAN CLASS="STRUCTNAME" >SDL_Surface</SPAN ></A >, <A HREF="sdllocksurface.html" ><TT CLASS="FUNCTION" >SDL_LockSurface</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="sdlupdaterect.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="sdlflip.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >SDL_UpdateRect</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="video.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >SDL_Flip</TD ></TR ></TABLE ></DIV ></BODY ></HTML >