In Flask's add_url_rule method, after add rule to url_map, then check whether the rule is added before.
rules_before_added = self.url_map._rules[:-1]
ix = rules_before_added.index(rule)
If the rule added before, then override the view function of previously rule.
self.view_functions[endpoint_override] = view_func
Fix issues like iessue 111
That looks like a workaround. I will try a cleaner solution.