#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
Зовет diff, если закончился с кодом 2 (бинарные файлы различаются) -- подменяет на 1, иначе выходит с исходным кодом.
Надо для внешнего diff для svn -- он ожидает строго 0 или 1 для индикации "есть различия или нет", а все прочие коды считает ошибкой
Все параметры как есть передает diff-у

Обсуждение особенностей diff и svn:
http://subversion.1072662.n5.nabble.com/svn-diff-diff-cmd-diff-fails-if-there-is-a-modified-binary-file-td71795.html
"""

import subprocess
import sys

if __name__ == '__main__':
    argv = sys.argv
    argv[0] = 'diff'
    c = subprocess.call(argv)
    if c == 2:
        exit(1)
    else:
        exit(c)

