anchor.diff:  	{ok, Handler, Opts, Bindings, HostInfo, undefined};
   match_path([{PathMatch, Constraints, Handler, Opts}|Tail], HostInfo, Tokens,
   		Bindings) when is_list(Tokens) ->
  -	case list_match(Tokens, PathMatch, []) of
  +	case list_match(Tokens, PathMatch, Bindings) of
   		false ->
   			match_path(Tail, HostInfo, Tokens, Bindings);
   		{true, PathBinds, PathInfo} ->
   			case check_constraints(Constraints, PathBinds) of
   				{ok, PathBinds2} ->
  -					{ok, Handler, Opts, Bindings ++ PathBinds2,
  -						HostInfo, PathInfo};
  +					{ok, Handler, Opts, PathBinds2, HostInfo, PathInfo};
   				nomatch ->
   					match_path(Tail, HostInfo, Tokens, Bindings)
   			end
  
positive.code: 		{<<"erlang.fr">>, '_',
  			{ok, match_erlang_ext, [], [{ext, <<"fr">>}]}},
  		{<<"any">>, <<"/users/444/friends">>,
  			{ok, match_users_friends, [], [{id, <<"444">>}]}},
  		{<<"ninenines.fr">>, <<"/threads/987">>,
  			{ok, match_duplicate_vars, [we, {expect, two}, var, here],
  				[{var, <<"fr">>}, {var, <<"987">>}]}}
  	],
  	[{lists:flatten(io_lib:format("~p, ~p", [H, P])), fun() ->
  		{ok, Handler, Opts, Binds, undefined, undefined}
  
negative.code: 		<<"ninenines.eu">>, <<"/path/ESSEN">>),
  	ok.
  
  match_same_bindings_test() ->
  	Dispatch = [{[same, same], [], [{'_', [], match, []}]}],
  	{ok, _, [], [{same, <<"eu">>}], _, _} = match(Dispatch,
  		<<"eu.eu">>, <<"/">>),
  	{error, notfound, host} = match(Dispatch,
  		<<"ninenines.eu">>, <<"/">>),
  	Dispatch2 = [{[<<"eu">>, <<"ninenines">>, user], [],
  		[{[<<"path">>, user], [], match, []}]}],
  	{ok, _, [], [{user, <<"essen">>}], _, _} = match(Dispatch2,
  		<<"essen.ninenines.eu">>, <<"/path/essen">>),
  	{ok, _, [], [{user, <<"essen">>}], _, _} = match(Dispatch2,
  		<<"essen.ninenines.eu">>, <<"/path/essen/">>),
  	{error, notfound, path} = match(Dispatch2,
  		<<"essen.ninenines.eu">>, <<"/path/notessen">>),
  	Dispatch3 = [{'_', [], [{[same, same], [], match, []}]}],
  	{ok, _, [], [{same, <<"path">>}], _, _} = match(Dispatch3,
  		<<"ninenines.eu">>, <<"/path/path">>),
  	{error, notfound, path} = match(Dispatch3,
  		<<"ninenines.eu">>, <<"/path/to">>),
  	ok.
  
  -endif.
  