Oops... my last patch was, indeed, not detecting correctly whether or not
'_bookmarks'/'_bookmarkcurrent' were properties.

Apologies... here's a patch which should now detect this correctly.  Also,
there's now a hglib.is_descriptor method, which be useful in other
contexts...

- Paul

On Wed, Dec 23, 2009 at 6:17 PM, Steve Borho <st...@borho.org> wrote:

> On Wed, Dec 23, 2009 at 8:01 PM, Steve Borho <st...@borho.org> wrote:
> > On Wed, Dec 23, 2009 at 7:23 PM, Steve Borho <st...@borho.org> wrote:
> >> On Wed, Dec 23, 2009 at 3:37 PM, Paul Molodowitch
> >> <pa...@luma-pictures.com> wrote:
> >>> Odd... doing what action in tortoise causes this?  On which version of
> >>> mercurial?
> >>> I couldn't replicate it on 1.4 or 1.5, in repos with or without
> bookmarks.
> >>> In mercurial 1.4, None is the value that bookmarks.py itself uses to
> >>> initialize _bookmarks,
> >>> so that should work fine.  On 1.5, it shouldn't be setting _bookmarks
> to
> >>> None, but
> >>> deleting the attribute from the instance instead.
> >>> If it's happening with 1.5, perhaps it's not detecting this correctly?
> >>
> >> I got this with the tip of hg default and the tip of thg default
> >> branches.  It happens immediately when I open the log browser on the
> >> THG repo.
> >>
> >> Let me see if I can validate it on other machines.
> >
> > I get this in tonight's nightly build, just opening the repository
> explorer:
> >
> > #!python
> > ** Please report this bug to
> > http://bitbucket.org/tortoisehg/stable/issues or
> > tortoisehg-disc...@lists.sourceforge.net
> > ** Mercurial version (1.4.1+92-27457d31ae3f).  TortoiseHg version
> > (0.9.1.1+148-9a035eedb9c6)
> > ** Command: --nofork log
> > ** CWD: C:\thg-winbuild\tortoisehg
> > ** Extensions loaded: extdiff, mq, transplant, purge, bookmarks
> > Traceback (most recent call last):
> >  File "tortoisehg\hgtk\hgtk.pyo", line 58, in dispatch
> >  File "tortoisehg\hgtk\hgtk.pyo", line 185, in _runcatch
> >  File "tortoisehg\hgtk\hgtk.pyo", line 253, in runcommand
> >  File "tortoisehg\hgtk\hgtk.pyo", line 371, in log
> >  File "tortoisehg\hgtk\hgtk.pyo", line 275, in gtkrun
> >  File "tortoisehg\hgtk\gdialog.pyo", line 250, in display
> >  File "tortoisehg\hgtk\history.pyo", line 601, in prepare_display
> >  File "tortoisehg\hgtk\history.pyo", line 837, in reload_log
> >  File "tortoisehg\hgtk\thgmq.pyo", line 326, in refresh
> >  File "tortoisehg\hgtk\thgmq.pyo", line 560, in update_sensitives
> >  File "tortoisehg\hgtk\thgmq.pyo", line 523, in is_operable
> >  File "mercurial\localrepo.pyo", line 249, in tags
> >  File "hgext\bookmarks.pyo", line 296, in _findtags
> > TypeError: 'NoneType' object is not iterable
> >
> > Perhaps a side effect with bookmarks and MQ enabled?
> >
> > --
> > Steve Borho
> >
>
> FWIW:  I can repo the above crash on Linux.
> When I disable MQ and leave bookmarks on, I get this traceback:
>
> Traceback (most recent call last):
>   File
> "/home/steve/tools/tortoisehg-dev/tortoisehg/hgtk/logview/treeview.py",
> line 258, in populate
>    model = treemodel.TreeModel(self.repo, self.graphdata, self.opts)
>  File
> "/home/steve/tools/tortoisehg-dev/tortoisehg/hgtk/logview/treemodel.py",
> line 57, in __init__
>    self.refresh()
>  File
> "/home/steve/tools/tortoisehg-dev/tortoisehg/hgtk/logview/treemodel.py",
> line 74, in refresh
>    self.wcparents = [x.rev() for x in repo.parents()]
>  File "/home/steve/lib/python/mercurial/localrepo.py", line 482, in parents
>    return self[changeid].parents()
>  File "/home/steve/lib/python/mercurial/context.py", line 107, in parents
>    return self._parents
>  File "/home/steve/lib/python/mercurial/util.py", line 150, in __get__
>    result = self.func(obj)
>  File "/home/steve/lib/python/mercurial/context.py", line 583, in _parents
>    self._parents = [changectx(self._repo, x) for x in p]
>  File "/home/steve/lib/python/mercurial/context.py", line 27, in __init__
>    self._node = self._repo.lookup(changeid)
>  File "/home/steve/lib/python/hgext/bookmarks.py", line 243, in lookup
>    if key in self._bookmarks:
> TypeError: argument of type 'NoneType' is not iterable
>
> --
> Steve Borho
>

Attachment: invalidateRepoFix
Description: Binary data

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
Tortoisehg-develop mailing list
Tortoisehg-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop

Reply via email to