[gegl] text: don't self-invalidate when calculating the bounding box



commit af9b941ed7da1c88e49eeaa89ed5eb00db605eb3
Author: Ell <ell_se yahoo com>
Date:   Tue Dec 6 15:40:31 2016 -0500

    text: don't self-invalidate when calculating the bounding box
    
    No one expects the Spanish Inqui^W^W^W get_bounding_box() to
    invalidate the op on which it's called.  At least, your's truly
    didn't, when I made gegl:crop depend on the bounding box of its
    input in get_invalidated_by_change(); this, in turn, caused a
    deadlock.  Disabling the invalidation avoids the deadlock, and
    doesn't seem to do any harm otherwise.

 operations/external/text.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)
---
diff --git a/operations/external/text.c b/operations/external/text.c
index 857b05e..babe4c1 100644
--- a/operations/external/text.c
+++ b/operations/external/text.c
@@ -269,7 +269,11 @@ get_bounding_box (GeglOperation *operation)
       o->width  = extent->defined.width  - extent->defined.x;
       o->height = extent->defined.height - extent->defined.y;
 
-      gegl_operation_invalidate (operation, NULL, TRUE);
+      /* XXX: this invalidation is *probably* unnecessary.  having
+       * get_bounding_box() cause an invalidation can be surprising,
+       * so disabling it for now.
+       */
+      /* gegl_operation_invalidate (operation, NULL, TRUE); */
     }
 
   if (status)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]