anchor.diff:  
   -spec fix_json({atom(), orddict:orddict()}) -> {struct, orddict:orddict()}.
   fix_json({_Kind, EntityDict}) ->
  -    {struct, [jsonify_entry(Entry) || Entry <- EntityDict]}.
  +    {struct, [jsonify_entry(Entry) || Entry <- EntityDict]};
  +fix_json(<<Str/binary>>) ->
  +    Str;
  +fix_json(Str) when is_list(Str) ->
  +    error_logger:warning_msg("called fix_json(\"~s\") with list instead of binary~n", [Str]),
  +    list_to_binary(Str).
  +
   
   generic_from_json(ReqData, Ctx, NewFunc, PutKind, PathPart) ->
       generic_from_json(ReqData, Ctx, NewFunc, PutKind, PathPart, fun(_,_) -> ok end).
  
positive.code: 	    case FindFunc(Name, Commit) of 
  		none ->
  		    {{halt, 404}, ReqData, Ctx};
  		Result ->
  		    DumpFunc(Result, ReqData, Ctx)
  	    end
      end.
  
negative.code: 		{ok, _} ->
  		    from_json_helper(Data, ReqData, Ctx, NewFunc, PutKind, PathPart, ValidFunc)
  	    end;
          Name when is_binary(Name) ->
  	    NamedData = orddict:store(name, Name, Data),
  	    from_json_helper(NamedData, ReqData, Ctx, NewFunc, PutKind, PathPart, ValidFunc);
  	Name when is_list(Name) ->
  	    NamedData = orddict:store(name, list_to_binary(Name), Data),
  	    from_json_helper(NamedData, ReqData, Ctx, NewFunc, PutKind, PathPart, ValidFunc)
      end.
  
  