Skip to content

Commit ddee951

Browse files
committed
pass the original obj & args to after_resolve
1 parent 333dd6d commit ddee951

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

lib/graphql/schema/field.rb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -478,6 +478,10 @@ def with_extensions(obj, args, ctx)
478478
if @extensions.none?
479479
yield(obj, args)
480480
else
481+
# Save these so that the originals can be re-given to `after_resolve` handlers.
482+
original_args = args
483+
original_obj = obj
484+
481485
memos = []
482486
@extensions.each do |ext|
483487
ext.before_resolve(object: obj, arguments: args, context: ctx) do |extended_obj, extended_args, memo|
@@ -495,7 +499,7 @@ def with_extensions(obj, args, ctx)
495499
@extensions.each_with_index do |ext, idx|
496500
memo = memos[idx]
497501
# TODO after_lazy?
498-
value = ext.after_resolve(object: obj, arguments: args, context: ctx, value: value, memo: memo)
502+
value = ext.after_resolve(object: original_obj, arguments: original_args, context: ctx, value: value, memo: memo)
499503
end
500504
end
501505
value

0 commit comments

Comments
 (0)