[Groonga-commit] groonga/groonga at 3cacb43 [master] mrb: use table size as fallback

Back to archive index

Kouhei Sutou null+****@clear*****
Fri Feb 20 12:00:27 JST 2015


Kouhei Sutou	2015-02-20 12:00:27 +0900 (Fri, 20 Feb 2015)

  New Revision: 3cacb43f02af93befbf56a68685c5e47b7959dc0
  https://github.com/groonga/groonga/commit/3cacb43f02af93befbf56a68685c5e47b7959dc0

  Message:
    mrb: use table size as fallback
    
    I think that mrb_funcall() should return value in rescue clause when the
    exception is handled in rescue clause.

  Modified files:
    lib/mrb/mrb_expr.c

  Modified: lib/mrb/mrb_expr.c (+5 -1)
===================================================================
--- lib/mrb/mrb_expr.c    2015-02-20 11:42:32 +0900 (5e2f27c)
+++ lib/mrb/mrb_expr.c    2015-02-20 12:00:27 +0900 (6ece6db)
@@ -861,7 +861,11 @@ grn_mrb_expr_estimate_size(grn_ctx *ctx, grn_obj *expr, grn_obj *table)
   mrb_expression = grn_mrb_value_from_grn_obj(mrb, expr);
   mrb_table = grn_mrb_value_from_grn_obj(mrb, table);
   mrb_size = mrb_funcall(mrb, mrb_expression, "estimate_size", 1, mrb_table);
-  size = mrb_fixnum(mrb_size);
+  if (mrb->exc) {
+    size = grn_table_size(ctx, table);
+  } else {
+    size = mrb_fixnum(mrb_size);
+  }
 
   mrb_gc_arena_restore(mrb, arena_index);
 
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index