Backporting the bug Evas GL direct rendering bug fix from r79532.
authorsung <sung@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 22 Nov 2012 08:07:53 +0000 (08:07 +0000)
committersung <sung@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 22 Nov 2012 08:07:53 +0000 (08:07 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/branches/evas-1.7@79533 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

ChangeLog
src/modules/engines/gl_x11/evas_engine.c

index 2010e8a..31634cc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
         textblock recalcs lead very badly. Required changed to textgrid
         though a sit relied on the leaky behavior.
         
+
+2012-11-22  Sung W. Park (sung_)
+
+        * Fixed a bug where if an image object rendered using Evas GL 
+        direct rendering and then another image object using Native
+        Surface rendering, there was a potential for it to fall into
+        the same direct rendering path.
index 44126ca..ee19400 100644 (file)
@@ -2806,9 +2806,14 @@ eng_image_draw(void *data, void *context, void *surface, void *image, int src_x,
 {
    Render_Engine *re;
    re = (Render_Engine *)data;
-   if (!image) return;
+   Evas_GL_Image *im = image;
+   Native *n;
+
+   if (!im) return;
+   n = im->native.data;
 
-   if ((gl_direct_img_obj) && (gl_direct_enabled))
+   if ((gl_direct_img_obj) && (gl_direct_enabled) && 
+       (n->ns.data.opengl.framebuffer_id == 0))
      {
         DBG("Rendering Directly to the window");
         evas_object_image_pixels_dirty_set(gl_direct_img_obj, EINA_TRUE);