Enlightenment CVS committal Author : barbieri Project : e17 Module : libs/evas
Dir : e17/libs/evas/src/lib/engines/common Modified Files: evas_tiler.c Log Message: Restrict rectangles to be inside the screen at evas_tiler =================================================================== RCS file: /cvs/e/e17/libs/evas/src/lib/engines/common/evas_tiler.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- evas_tiler.c 5 Jun 2007 03:30:05 -0000 1.15 +++ evas_tiler.c 8 Jun 2007 00:03:56 -0000 1.16 @@ -1115,23 +1115,31 @@ for (n = tb->rects.head; n != NULL; n = n->next) { rect_t cur; - Tilebuf_Rect *r; cur = ((rect_node_t *)n)->rect; - r = malloc(sizeof(Tilebuf_Rect)); - r->_list_data.next = NULL; - r->_list_data.prev = NULL; - r->_list_data.last = NULL; - r->x = cur.left << 1; - r->y = cur.top << 1; - r->w = cur.width << 1; - r->h = cur.height << 1; + cur.left <<= 1; + cur.top <<= 1; + cur.width <<= 1; + cur.height <<= 1; -/* fprintf(stderr, "\tclear: %4d,%4d %3dx%3d\n", */ -/* r->x, r->y, r->w, r->h); */ + RECTS_CLIP_TO_RECT(cur.left, cur.top, cur.width, cur.height, + 0, 0, tb->outbuf_w, tb->outbuf_h); + if ((cur.width > 0) && (cur.height > 0)) + { + Tilebuf_Rect *r; - rects = evas_object_list_append(rects, r); + r = malloc(sizeof(Tilebuf_Rect)); + r->_list_data.next = NULL; + r->_list_data.prev = NULL; + r->_list_data.last = NULL; + r->x = cur.left; + r->y = cur.top; + r->w = cur.width; + r->h = cur.height; + + rects = evas_object_list_append(rects, r); + } } return rects; ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs