Daniel Näslund wrote:
> [[[ 
> Do not display a binary property diff in the interactive conflict
> resolver. 

The concept of a "binary property" is new in this patch, so a few
additional words would be useful here, to say what change you are
making:

  Detect heuristically whether the property value is "text" or "binary"
and only allow an interactive diff and merge if it is "text".

> * subversion/include/svn_io.h
>   (svn_stream_detect_binary_mimetype): New. Declare.

Please do not use "mimetype" in the name of this function, nor in its
result value. It has nothing to do with MIME types, it is just trying to
decide whether the content can be displayed as lines of text or not.

I would suggest something like "content_is_textual", with a Boolean
result type.

> * subversion/libsvn_subr/stream.c
>   (svn_stream_detect_binary_mimetype): Check if atleast 85 % of the
>     bytes fall within the ascii range of printable characters.
> 
> * subversion/libsvn_wc/props.c
>   (maybe_generate_propconflict): Call ..binary_mimetype() on the
>     mergestream. Set the conflict description according to the
> outcome.
> 
> * subversion/svn/conflict-callbacks.c
>   (svn_cl__conflict_handler): Print err msg if desc->is_binary when
>     invoking 'diff-full'.
> 
> Patch by: Daniel Näslund <daniel{_AT_}longitudo.com> 
> ]]]


> As I'm saying further down. I have only duplicated a part of
> svn_io_detect_mimetype2() and intend to refactor this part into a helper
> func in libsvn_subr.

Hi Daniel. Would you be able to factor out the code first, and then
build on it afterwards or at the same time?  It makes me uncomfortable
when we add duplicated code, even when there is an intention to
un-duplicate it later.

- Julian


Reply via email to