[gegl] operation: don't do in-place processing for cached nodes



commit 1d0a56b9dd83a100945fb5062dd6cb56a9f04018
Author: Ell <ell_se yahoo com>
Date:   Thu Mar 28 16:41:58 2019 -0400

    operation: don't do in-place processing for cached nodes
    
    ... since their result needs to be written to the cache.

 gegl/operation/gegl-operation-context.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/gegl/operation/gegl-operation-context.c b/gegl/operation/gegl-operation-context.c
index 580c32012..a70a5ee8b 100644
--- a/gegl/operation/gegl-operation-context.c
+++ b/gegl/operation/gegl-operation-context.c
@@ -390,7 +390,8 @@ gegl_operation_context_get_output_maybe_in_place (GeglOperation *operation,
   GeglOperationClass *klass = GEGL_OPERATION_GET_CLASS (operation);
   GeglBuffer *output;
 
-  if (klass->want_in_place && 
+  if (klass->want_in_place                    &&
+      ! gegl_node_use_cache (operation->node) &&
       gegl_can_do_inplace_processing (operation, input, roi))
     {
       output = g_object_ref (input);


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