View | Details | Raw Unified | Return to bug 24564
Collapse All | Expand All

(-)mergemaster.sh (-14 / +17 lines)
Lines 671-691 Link Here
671
669
672
  case "${STRICT}" in
670
  case "${STRICT}" in
673
  '' | [Nn][Oo])
671
  '' | [Nn][Oo])
674
    # Compare CVS $Id's first so if the file hasn't been modified
672
    # Ignore local changes unless the source file has changed, which
675
    # local changes will be ignored.
673
    # we detect by looking at ident strings:
676
    # If the files have the same $Id, delete the one in temproot so the
674
    # If the destination file has all of the ident strings of the
677
    # user will have less to wade through if files are left to merge by hand.
675
    # temproot file, then delete the temproot file so the user will
676
    # have less to wade through if files are left to merge by hand.
677
    # We allow the user to add local ident strings which are ignored.
678
    #
678
    #
679
    # Reduce complexity and improve portability by using ident
679
    ALL_PRESENT=YES
680
    #
680
    ident ${COMPFILE} 2>&1 | {
681
    CVSID1=`ident ${DESTDIR}${COMPFILE#.} 2>&1`
681
      read DISCARD_FILENAME
682
    CVSID1="${CVSID1#${DESTDIR}}"
682
      while read IDENT_STRING; do
683
    CVSID2=`ident ${COMPFILE} 2>&1`
683
        if ident ${DESTDIR}${COMPFILE#.} 2>&1 | fgrep -qv "${IDENT_STRING}"; then
684
684
          ALL_PRESENT=NO
685
    case "${CVSID2}" in
685
        fi
686
    *'no id keywords'*)
686
      done	
687
      ;;
687
    }
688
    ."${CVSID1}")
688
    case "${ALL_PRESENT}" in
689
    [Yy][Es][Ss])
689
      echo " *** Temp ${COMPFILE} and installed have the same CVS Id, deleting"
690
      echo " *** Temp ${COMPFILE} and installed have the same CVS Id, deleting"
690
      rm "${COMPFILE}"
691
      rm "${COMPFILE}"
691
      ;;
692
      ;;

Return to bug 24564