Can't render visible private branch on invisible private project

Bug #1837671 reported by Colin Watson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
New
Undecided
Unassigned

Bug Description

If a private branch is shared with you but its containing project isn't, then you can't render Branch:+index or run bzr operations on it. Branch:+index fails with a traceback ending in:

    Module lp.code.browser.branch, line 417, in page_title
    return self.context.bzr_identity
    Module lp.services.propertycache, line 115, in __get__
    value = self.populate(instance)
    Module lp.code.browser.decorations, line 51, in bzr_identity
    return super(DecoratedBranch, self).bzr_identity
    Module lp.code.interfaces.branch, line 1561, in bzr_identity
    return config.codehosting.bzr_lp_prefix + self.shortened_path
    Module lp.code.interfaces.branch, line 1556, in shortened_path
    return self.getBranchIdentities()[0][0]
    Module lp.code.interfaces.branch, line 1572, in getBranchIdentities
    for link in self.getBranchLinks()]
    Module lp.code.interfaces.branch, line 1587, in getBranchLinks
    if series.product.development_focus == series:

Unauthorized: (<Product at 0x7fb19dc59d50>, 'development_focus', 'launchpad.View')

bzr operations fail with "<ProtocolError for xmlrpc.lp.internal:8097/codehosting: 401 Unauthorized>"; I wasn't able to capture more details than that.

getBranchLinks is trying to fetch attributes that require launchpad.View rather than launchpad.LimitedView. As far as I can tell, the user ought to have LimitedView in this situation in order to be able to traverse to the branch.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.