AMDG
> // if ( !missing_parent ) * // COMMENT THIS LINE*
On 03/23/2014 06:02 PM, Jose . wrote:
>
> A quick and dirty fix, that works for me, is this:
>
> static int canonicWindowsPath( char const * const path, int const
> path_length,
> string * const out )
> {
> ....
>
> saved_size = out->size;
> string_append_range( out, last_element, path + path_length );
>
> {The culprit appears to be r83892, which doesn't
> char const * const n = last_element;
> ....
> }
>
correctly handle "." and ".." It should return
1, but instead it returns 0. The correct fix is
to add an else
...
if ( !missing_parent )
{int const n_length = path + path_length - n;
char const * const n = last_element;
if ( !( n_length == 1 && n[ 0 ] == '.' )
&& !( n_length == 2 && n[ 0 ] == '.' && n[ 1 ] == '.' ) )
{
...
}
else /* HERE */
{
return 1;
}
}
I'll add this in master (along with some tests) tomorrow.
In Christ,
Steven Watanabe
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build