          ret = []
          for route in self.routes:
              if route.mapping == {'{httpmethod}': '{methodname}'}:
                  # Dynamic routes (@link or @action decorator)
                  for httpmethod, methodname in dynamic_routes.items():
                      initkwargs = route.initkwargs.copy()
                      initkwargs.update(getattr(viewset, methodname).kwargs)
                      ret.append(Route(
                          url=replace_methodname(route.url, methodname),
                          mapping={httpmethod: methodname},
 
</s> remove         dynamic_routes = {}
 </s> add         dynamic_routes = [] </s> remove                 dynamic_routes[httpmethod] = methodname
 </s> add                 dynamic_routes.append((httpmethod, methodname))
                for httpmethod, methodname in dynamic_routes:
          ret = []
          for route in self.routes:
              if route.mapping == {'{httpmethod}': '{methodname}'}:
                  # Dynamic routes (@link or @action decorator)
                for httpmethod, methodname in dynamic_routes:
                      initkwargs = route.initkwargs.copy()
                      initkwargs.update(getattr(viewset, methodname).kwargs)
                      ret.append(Route(
                          url=replace_methodname(route.url, methodname),
                          mapping={httpmethod: methodname},
keep keep keep keep replace keep keep keep keep keep
 added support for multiple @action and @link decorators on a viewset, along with a router testcase illustrating the failure against the master code base 
rest_framework/routers.py