Neil Roberts
702873c199
matrix-stack: Prune stack entries when loading a replacement matrix
...
Previously if an application does not use the matrix stack as a stack
but instead just loads its own matrices for each frame using
cogl_framebuffer_set_modelview_matrix then it will continously push
OP_LOAD entries on the stack and the stack will grow forever. This
patch fixes that use case by resetting the top of the stack to the
last save entry whenever something is pushed that replaces the
previous matrix on the stack.
Reviewed-by: Robert Bragg <robert@linux.intel.com>
(cherry picked from commit d31ed33241a9e9e3bc25f01b2614678827a7a9aa)
2012-08-06 14:27:43 +01:00
..
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:38 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-03-09 16:09:13 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:41 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:40 +01:00
2011-12-06 18:51:57 +00:00
2012-08-06 14:27:39 +01:00
2011-11-01 15:55:53 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:41 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2011-11-22 16:07:21 +00:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:38 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:39 +01:00
2012-01-05 13:40:59 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:40 +01:00
2012-04-11 15:44:58 +01:00
2012-02-08 17:00:25 +00:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:41 +01:00
2012-08-06 14:27:39 +01:00
2012-02-14 20:42:10 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-02-20 23:16:37 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2011-11-01 12:03:02 +00:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:38 +01:00
2012-03-06 18:45:44 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:41 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:40 +01:00
2011-12-06 19:02:06 +00:00
2012-08-06 14:27:40 +01:00
2011-12-06 18:51:57 +00:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:41 +01:00
2012-08-06 14:27:41 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-02-20 23:12:45 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-01-27 17:18:32 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-01-27 17:18:32 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:43 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-03-20 14:26:44 +00:00
2012-03-05 20:23:54 +00:00
2012-03-20 14:26:44 +00:00
2012-02-20 23:12:45 +00:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-08-06 14:27:39 +01:00
2012-02-20 23:12:45 +00:00
2012-08-06 14:27:40 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:42 +01:00
2012-08-06 14:27:39 +01:00