Diff
Not logged in

Differences From:

File tools/cvs2fossil/lib/c2f_repository.tcl part of check-in [84871722547960b] - Broke static dependency cycle repository <- project <- file <- repository, now using dynamic/runtime object references instead. This allows us to keep the nice and readable format for our files, code is readable too. by aku on 2007-10-06 22:06:05. [view]

To:

File tools/cvs2fossil/lib/c2f_repository.tcl part of check-in [70b0aa899a] - Found easier way to access the typevariables of singletons when writing the rcs parser. Now moved the other singletons to the same construction. by aku on 2007-10-06 22:13:25. [view]

@@ -175,9 +175,10 @@
 	return [string length [llength [$p filenames]]]
     }
 
     proc IsRepositoryBase {path mv} {
-	upvar 1 $mv msg mybase mybase
+	::variable mybase
+	upvar 1 $mv msg
 	if {![fileutil::test $mybase         edr msg {CVS Repository}]}      {return 0}
 	if {![fileutil::test $mybase/CVSROOT edr msg {CVS Admin Directory}]} {return 0}
 	return 1
     }
@@ -195,9 +196,12 @@
 	return 1
     }
 
     proc TheProjects {} {
-	upvar 1 myprojects myprojects myprojpaths myprojpaths mybase mybase type type
+	upvar 1 type type
+	::variable myprojects
+	::variable myprojpaths
+	::variable mybase
 
 	if {![llength $myprojects]} {
 	    set myprojects [EmptyProjects $myprojpaths]
 	}
@@ -204,9 +208,10 @@
 	return $myprojects
     }
 
     proc EmptyProjects {projpaths} {
-	upvar 1 mybase mybase type type
+	::variable mybase
+	upvar 1 type type
 	set res {}
 	if {[llength $projpaths]} {
 	    foreach pp $projpaths {
 		lappend res [project %AUTO% $pp $type]