summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorLamont Granquist <lamont@scriptkiddie.org>2014-08-07 14:24:20 -0500
committerLamont Granquist <lamont@scriptkiddie.org>2014-08-07 18:30:02 -0500
commit18ac44d520d40ec8981b4266b8bb040607377f1e (patch)
tree924204fc1e962216143884c2c33297a9c542e18d /ext
parent46239c54700ad1e06a6ac86eaf0fbcb141ce3eb1 (diff)
downloadffi-yajl-18ac44d520d40ec8981b4266b8bb040607377f1e.tar.gz
fix for chef pretty printing issues
Diffstat (limited to 'ext')
-rw-r--r--ext/ffi_yajl/ext/encoder/encoder.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ext/ffi_yajl/ext/encoder/encoder.c b/ext/ffi_yajl/ext/encoder/encoder.c
index 5576881..26ae368 100644
--- a/ext/ffi_yajl/ext/encoder/encoder.c
+++ b/ext/ffi_yajl/ext/encoder/encoder.c
@@ -9,7 +9,7 @@ static VALUE cYajl_Gen;
#define CHECK_STATUS(call) \
if ((status = (call)) != yajl_gen_status_ok) { rb_funcall(mEncoder2, rb_intern("raise_error_for_status"), 1, INT2FIX(status)); }
-static VALUE mEncoder_do_yajl_encode(VALUE self, VALUE obj, VALUE yajl_gen_opts) {
+static VALUE mEncoder_do_yajl_encode(VALUE self, VALUE obj, VALUE yajl_gen_opts, VALUE json_opts) {
ID sym_ffi_yajl = rb_intern("ffi_yajl");
VALUE sym_yajl_gen_beautify = ID2SYM(rb_intern("yajl_gen_beautify"));
VALUE sym_yajl_gen_validate_utf8 = ID2SYM(rb_intern("yajl_gen_validate_utf8"));
@@ -42,6 +42,8 @@ static VALUE mEncoder_do_yajl_encode(VALUE self, VALUE obj, VALUE yajl_gen_opts)
rb_hash_aset(state, rb_str_new2("processing_key"), Qfalse);
+ rb_hash_aset(state, rb_str_new2("json_opts"), json_opts);
+
rb_yajl_gen = Data_Wrap_Struct(cYajl_Gen, NULL, NULL, yajl_gen);
rb_funcall(obj, sym_ffi_yajl, 2, rb_yajl_gen, state);
@@ -261,7 +263,7 @@ void Init_encoder() {
mExt = rb_define_module_under(mFFI_Yajl, "Ext");
mEncoder = rb_define_module_under(mExt, "Encoder");
cYajl_Gen = rb_define_class_under(mEncoder, "YajlGen", rb_cObject);
- rb_define_method(mEncoder, "do_yajl_encode", mEncoder_do_yajl_encode, 2);
+ rb_define_method(mEncoder, "do_yajl_encode", mEncoder_do_yajl_encode, 3);
rb_define_method(rb_cHash, "ffi_yajl", rb_cHash_ffi_yajl, 2);
rb_define_method(rb_cArray, "ffi_yajl", rb_cArray_ffi_yajl, 2);