Interesting....  yeah, it is in the root of a drive that this recreates.
 Odd.
--David

On Fri, Jul 31, 2009 at 1:03 AM, Stephen Leake <
[email protected]> wrote:

> david crandall <[email protected]> writes:
>
> > Yeah, this is an uber not-critical bug, because re-initing my database
> and
> > pulling...  while a little long in process, completely got me a
> workaround.
>
> That should not have had any effect on this bug.
>
> The problem is _where_ you do the checkout, not _what_ you checkout.
>
> So please try to reproduce this.
>
> I use mtn on windows a lot, and it definitely can't operate in the
> root directory of a drive. That's never a problem in real life, so I
> haven't tried to fix it.
>
> >
> >
> > --David
> >
> > On Thu, Jul 30, 2009 at 7:09 PM, Zack Weinberg <[email protected]> wrote:
> >
> >> On Wed, Jul 29, 2009 at 7:38 PM, david crandall<[email protected]>
> >> wrote:
> >> >  First, before you look too far into this, there's something I should
> >> > mention that will probably set your mind at ease.  I basically took a
> >> > monotone database from version 0.40 on linux, and copied it over for
> use
> >> in
> >> > windows on 0.44.  I figure if it said, "update your stuff", it would
> ask.
> >>
> >> There's no database migration needed going from 0.40 to 0.44.  And if
> >> you did need one, yes, it is supposed to tell you, rather than
> >> crashing like this.
> >>
> >> > Y:\>mtn --db y:/mtn_db/.dave.mtn --key [email protected] --keydir
> >> > y:/keystor co --branch com.fortunet.altanik -r 6ba39f0 --debug
> >> ...
> >> > mtn.EXE: ----- begin 'inT' (in std::string normalize_path(const
> >> > std::string&), at paths.cc:262)
> >> > mtn.EXE: /com.fortunet.altanik
> >> > mtn.EXE: -----   end 'inT' (in std::string normalize_path(const
> >> > std::string&), at paths.cc:262)
> >> > mtn.EXE: paths.cc:307: detected internal error,
> >> 'I(!is_absolute_here(inT))'
> >> > violated
> >>
> >> Ok, this looks like a real bug: you are trying to do a checkout in the
> >> root directory of a Windows drive, which should be fine, but may never
> >> have been attempted before.  And you didn't specify a directory to
> >> check out into, so it's trying to form the directory name from the
> >> branch name, and losing the drive letter, which makes the path
> >> normalization logic unhappy.
> >>
> >> I do not have a working Windows development environment right now, so
> >> I can't fix this bug.  I don't know whether anyone else reading
> >> monotone-devel has the time and the setup to do it.  [To anyone who
> >> tries: I think the problem is either in the system_path() constructor,
> >> or in workspace::create_workspace().]
> >>
> >> However, you should be able to work around the problem by doing your
> >> checkouts somewhere other than the root of a drive.  You may also be
> >> able to work around the problem by specifying a directory for the
> >> checkout on the command line.
> >>
> >> zw
> >>
> > _______________________________________________
> > Monotone-devel mailing list
> > [email protected]
> > http://lists.nongnu.org/mailman/listinfo/monotone-devel
>
> --
> -- Stephe
>
_______________________________________________
Monotone-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/monotone-devel

Reply via email to