Bladeren bron

fail when trying to encode atom 'undefined'

pull/152/head
Pierre Fenoll 7 jaren geleden
bovenliggende
commit
0cebc347f8
3 gewijzigde bestanden met toevoegingen van 5 en 0 verwijderingen
  1. +3
    -0
      c_src/encoder.c
  2. +1
    -0
      c_src/jiffy.c
  3. +1
    -0
      c_src/jiffy.h

+ 3
- 0
c_src/encoder.c Bestand weergeven

@ -759,6 +759,9 @@ encode_iter(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[])
ret = enc_error(e, "false");
goto done;
}
} else if(enif_compare(curr, e->atoms->atom_undefined) == 0) {
ret = enc_obj_error(e, "invalid_ejson", curr);
goto done;
} else if(enif_is_binary(env, curr)) {
if(!enc_string(e, curr)) {
ret = enc_obj_error(e, "invalid_string", curr);

+ 1
- 0
c_src/jiffy.c Bestand weergeven

@ -34,6 +34,7 @@ load(ErlNifEnv* env, void** priv, ERL_NIF_TERM info)
st->atom_escape_forward_slashes = make_atom(env, "escape_forward_slashes");
st->atom_dedupe_keys = make_atom(env, "dedupe_keys");
st->atom_copy_strings = make_atom(env, "copy_strings");
st->atom_undefined = make_atom(env, "undefined");
// Markers used in encoding
st->ref_object = make_atom(env, "$object_ref$");

+ 1
- 0
c_src/jiffy.h Bestand weergeven

@ -37,6 +37,7 @@ typedef struct {
ERL_NIF_TERM atom_escape_forward_slashes;
ERL_NIF_TERM atom_dedupe_keys;
ERL_NIF_TERM atom_copy_strings;
ERL_NIF_TERM atom_undefined;
ERL_NIF_TERM ref_object;
ERL_NIF_TERM ref_array;

Laden…
Annuleren
Opslaan