Fossil SCM

Now that checkout_cmd() can handle the situation that vid==0 ([b725c1cf26]), no longer assume that the initial commit has rid=1: If the initial commit is not empty that will not be true any more.

jan.nijtmans 2013-11-19 13:09 trunk
Commit 6791ad1185f374dc2dd7c028282cd9c69e18abe0
1 file changed +19 -23
+19 -23
--- src/db.c
+++ src/db.c
@@ -2003,10 +2003,12 @@
20032003
*/
20042004
void cmd_open(void){
20052005
int vid;
20062006
int keepFlag;
20072007
int allowNested;
2008
+ char **oldArgv;
2009
+ int oldArgc;
20082010
static char *azNewArgv[] = { 0, "checkout", "--prompt", 0, 0, 0 };
20092011
20102012
url_proxy_options();
20112013
keepFlag = find_option("keep",0,0)!=0;
20122014
allowNested = find_option("nested",0,0)!=0;
@@ -2029,33 +2031,27 @@
20292031
(char*)0);
20302032
db_delete_on_failure(LOCALDB_NAME);
20312033
db_open_local(0);
20322034
db_lset("repository", g.argv[2]);
20332035
db_record_repository_filename(g.argv[2]);
2034
- vid = db_int(0, "SELECT pid FROM plink y"
2035
- " WHERE NOT EXISTS(SELECT 1 FROM plink x WHERE x.cid=y.pid)");
2036
- if( vid==0 ){
2037
- db_lset_int("checkout", 1);
2038
- }else{
2039
- char **oldArgv = g.argv;
2040
- int oldArgc = g.argc;
2041
- db_lset_int("checkout", vid);
2042
- azNewArgv[0] = g.argv[0];
2043
- g.argv = azNewArgv;
2044
- g.argc = 3;
2045
- if( oldArgc==4 ){
2046
- azNewArgv[g.argc-1] = oldArgv[3];
2047
- }else{
2048
- azNewArgv[g.argc-1] = db_get("main-branch", "trunk");
2049
- }
2050
- if( keepFlag ){
2051
- azNewArgv[g.argc++] = "--keep";
2052
- }
2053
- checkout_cmd();
2054
- g.argc = 2;
2055
- info_cmd();
2056
- }
2036
+ db_lset_int("checkout", 0);
2037
+ oldArgv = g.argv;
2038
+ oldArgc = g.argc;
2039
+ azNewArgv[0] = g.argv[0];
2040
+ g.argv = azNewArgv;
2041
+ g.argc = 3;
2042
+ if( oldArgc==4 ){
2043
+ azNewArgv[g.argc-1] = oldArgv[3];
2044
+ }else{
2045
+ azNewArgv[g.argc-1] = db_get("main-branch", "trunk");
2046
+ }
2047
+ if( keepFlag ){
2048
+ azNewArgv[g.argc++] = "--keep";
2049
+ }
2050
+ checkout_cmd();
2051
+ g.argc = 2;
2052
+ info_cmd();
20572053
}
20582054
20592055
/*
20602056
** Print the value of a setting named zName
20612057
*/
20622058
--- src/db.c
+++ src/db.c
@@ -2003,10 +2003,12 @@
2003 */
2004 void cmd_open(void){
2005 int vid;
2006 int keepFlag;
2007 int allowNested;
 
 
2008 static char *azNewArgv[] = { 0, "checkout", "--prompt", 0, 0, 0 };
2009
2010 url_proxy_options();
2011 keepFlag = find_option("keep",0,0)!=0;
2012 allowNested = find_option("nested",0,0)!=0;
@@ -2029,33 +2031,27 @@
2029 (char*)0);
2030 db_delete_on_failure(LOCALDB_NAME);
2031 db_open_local(0);
2032 db_lset("repository", g.argv[2]);
2033 db_record_repository_filename(g.argv[2]);
2034 vid = db_int(0, "SELECT pid FROM plink y"
2035 " WHERE NOT EXISTS(SELECT 1 FROM plink x WHERE x.cid=y.pid)");
2036 if( vid==0 ){
2037 db_lset_int("checkout", 1);
2038 }else{
2039 char **oldArgv = g.argv;
2040 int oldArgc = g.argc;
2041 db_lset_int("checkout", vid);
2042 azNewArgv[0] = g.argv[0];
2043 g.argv = azNewArgv;
2044 g.argc = 3;
2045 if( oldArgc==4 ){
2046 azNewArgv[g.argc-1] = oldArgv[3];
2047 }else{
2048 azNewArgv[g.argc-1] = db_get("main-branch", "trunk");
2049 }
2050 if( keepFlag ){
2051 azNewArgv[g.argc++] = "--keep";
2052 }
2053 checkout_cmd();
2054 g.argc = 2;
2055 info_cmd();
2056 }
2057 }
2058
2059 /*
2060 ** Print the value of a setting named zName
2061 */
2062
--- src/db.c
+++ src/db.c
@@ -2003,10 +2003,12 @@
2003 */
2004 void cmd_open(void){
2005 int vid;
2006 int keepFlag;
2007 int allowNested;
2008 char **oldArgv;
2009 int oldArgc;
2010 static char *azNewArgv[] = { 0, "checkout", "--prompt", 0, 0, 0 };
2011
2012 url_proxy_options();
2013 keepFlag = find_option("keep",0,0)!=0;
2014 allowNested = find_option("nested",0,0)!=0;
@@ -2029,33 +2031,27 @@
2031 (char*)0);
2032 db_delete_on_failure(LOCALDB_NAME);
2033 db_open_local(0);
2034 db_lset("repository", g.argv[2]);
2035 db_record_repository_filename(g.argv[2]);
2036 db_lset_int("checkout", 0);
2037 oldArgv = g.argv;
2038 oldArgc = g.argc;
2039 azNewArgv[0] = g.argv[0];
2040 g.argv = azNewArgv;
2041 g.argc = 3;
2042 if( oldArgc==4 ){
2043 azNewArgv[g.argc-1] = oldArgv[3];
2044 }else{
2045 azNewArgv[g.argc-1] = db_get("main-branch", "trunk");
2046 }
2047 if( keepFlag ){
2048 azNewArgv[g.argc++] = "--keep";
2049 }
2050 checkout_cmd();
2051 g.argc = 2;
2052 info_cmd();
 
 
 
 
 
 
2053 }
2054
2055 /*
2056 ** Print the value of a setting named zName
2057 */
2058

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button