Eskil

Diff
Login

Differences From Artifact [c8b67920c6]:

To Artifact [44f24caabd]:


680
681
682
683
684
685
686
687

688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703

704
705
706
707
708
709
710
680
681
682
683
684
685
686

687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702

703
704
705
706
707
708
709
710







-
+















-
+







}

# Figure out GIT revision from arguments
proc eskil::rev::GIT::ParseRevs {filename revs} {
    set result ""
    foreach rev $revs {
        switch -glob -- $rev {
            0 {
            0 - _ { # _ is a common shortcut for current
                lappend result HEAD
            }
            HEAD - master - * { # Let anything through for now
                lappend result $rev
            }
        }
    }
    return $result
}

# Figure out FOSSIL revision from arguments
proc eskil::rev::FOSSIL::ParseRevs {filename revs} {
    set result ""
    foreach rev $revs {
        # Special cases that shortcuts to Fossil special names
        if {$rev eq "0"} {set rev current}
        if {$rev eq "_" || $rev eq "0"} {set rev current}
        if {$rev eq "-1"} {set rev previous}

        if {[string is integer -strict $rev] && $rev < 0} {
            # A negative integer rev is a relative rev
            set revList [eskil::rev::FOSSIL::GetRevList $filename]

            set rev [lindex $revList [- $rev]]
817
818
819
820
821
822
823



824

825
826
827
828
829
830
831
817
818
819
820
821
822
823
824
825
826

827
828
829
830
831
832
833
834







+
+
+
-
+







                set atRev ""
            }
            set Url [eskil::rev::SVN::LookForBranch $filename $rev]
            if {$Url ne ""} {
                set rev $atRev
            }
        }
        if {$rev eq "_"} {
            # Common name for current
            set rev [eskil::rev::SVN::GetCurrent $filename]
        if {[string is integer -strict $rev] && $rev <= 0} {
        } elseif {[string is integer -strict $rev] && $rev <= 0} {
            # Zero means current
            # A negative integer rev is a relative rev
            # Save a roundtrip to the server in the case where we
            # can start from current
            if {$Url eq "" && $rev >= -1} {
                set curr [eskil::rev::SVN::GetCurrent $filename]
                set rev [expr {$curr + $rev}]