From a925762c3b1c1f7b3a272b7294c0ec9b4eb4fb6d Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Fri, 27 Sep 2013 10:45:09 -0700 Subject: [PATCH] rustdoc: Fix searching for default methods Closes #9566 --- src/librustdoc/html/render.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/librustdoc/html/render.rs b/src/librustdoc/html/render.rs index 717aeaa1fd3..24437c3a97f 100644 --- a/src/librustdoc/html/render.rs +++ b/src/librustdoc/html/render.rs @@ -259,8 +259,12 @@ impl<'self> DocFolder for Cache { if self.parent_stack.len() == 0 { None } else { - Some((Some(*self.parent_stack.last()), - self.stack.as_slice())) + let last = self.parent_stack.last(); + let amt = match self.paths.find(last) { + Some(&(_, "trait")) => self.stack.len() - 1, + Some(*) | None => self.stack.len(), + }; + Some((Some(*last), self.stack.slice_to(amt))) } } _ => Some((None, self.stack.as_slice()))