Fossil SCM
For the "clone" command, throw a fatal error if the FILENAME argument is omitted and we are unable to guess an appropriate filename from the URL.
Commit
4fa02aff8e6c9d2acc9a006d6c02fb3a2983702c2bcdaab7bad63a488148d8f2
Parent
88a833075839d87…
1 file changed
+6
+6
| --- src/clone.c | ||
| +++ src/clone.c | ||
| @@ -179,10 +179,16 @@ | ||
| 179 | 179 | } |
| 180 | 180 | url_parse(g.argv[2], urlFlags); |
| 181 | 181 | if( zRepo==0 ){ |
| 182 | 182 | int i; |
| 183 | 183 | const char *z = file_tail(g.url.isFile ? g.url.name : g.url.path); |
| 184 | + if( z==0 || z[0]==0 ){ | |
| 185 | + fossil_fatal( | |
| 186 | + "unable to guess a repository name from the url \"%s\".\n" | |
| 187 | + "give the repository filename as an additional argument.", | |
| 188 | + g.argv[2]); | |
| 189 | + } | |
| 184 | 190 | for(i=0; z[i] && z[i]!='.'; i++){} |
| 185 | 191 | if( zWorkDir==0 ){ |
| 186 | 192 | zWorkDir = mprintf("./%.*s", i, z); |
| 187 | 193 | } |
| 188 | 194 | zRepo = mprintf("./%.*s.fossil", i, z); |
| 189 | 195 |
| --- src/clone.c | |
| +++ src/clone.c | |
| @@ -179,10 +179,16 @@ | |
| 179 | } |
| 180 | url_parse(g.argv[2], urlFlags); |
| 181 | if( zRepo==0 ){ |
| 182 | int i; |
| 183 | const char *z = file_tail(g.url.isFile ? g.url.name : g.url.path); |
| 184 | for(i=0; z[i] && z[i]!='.'; i++){} |
| 185 | if( zWorkDir==0 ){ |
| 186 | zWorkDir = mprintf("./%.*s", i, z); |
| 187 | } |
| 188 | zRepo = mprintf("./%.*s.fossil", i, z); |
| 189 |
| --- src/clone.c | |
| +++ src/clone.c | |
| @@ -179,10 +179,16 @@ | |
| 179 | } |
| 180 | url_parse(g.argv[2], urlFlags); |
| 181 | if( zRepo==0 ){ |
| 182 | int i; |
| 183 | const char *z = file_tail(g.url.isFile ? g.url.name : g.url.path); |
| 184 | if( z==0 || z[0]==0 ){ |
| 185 | fossil_fatal( |
| 186 | "unable to guess a repository name from the url \"%s\".\n" |
| 187 | "give the repository filename as an additional argument.", |
| 188 | g.argv[2]); |
| 189 | } |
| 190 | for(i=0; z[i] && z[i]!='.'; i++){} |
| 191 | if( zWorkDir==0 ){ |
| 192 | zWorkDir = mprintf("./%.*s", i, z); |
| 193 | } |
| 194 | zRepo = mprintf("./%.*s.fossil", i, z); |
| 195 |