Fossil SCM
Teach the chat pull subcommand to prompt for a password if no password has been remembered for the remote. Resolves the problem reported in [forum:ea82cf10d4|forum post ea82cf10d4].
Commit
003c3e6c8a8863463e46954ea77e2385ec96e7d67bb998a53f687afc22d0b68a
Parent
0d2befb04d9640f…
1 file changed
+9
-1
+9
-1
| --- src/chat.c | ||
| +++ src/chat.c | ||
| @@ -1217,11 +1217,19 @@ | ||
| 1217 | 1217 | zObs = obscure(g.url.user); |
| 1218 | 1218 | blob_appendf(&reqUri, "&resid=%t", zObs); |
| 1219 | 1219 | fossil_free(zObs); |
| 1220 | 1220 | } |
| 1221 | 1221 | zPw = g.url.passwd; |
| 1222 | - if( zPw==0 && isDefaultUrl ) zPw = unobscure(db_get("last-sync-pw", 0)); | |
| 1222 | + if( zPw==0 && isDefaultUrl ){ | |
| 1223 | + zPw = unobscure(db_get("last-sync-pw", 0)); | |
| 1224 | + if( zPw==0 ){ | |
| 1225 | + /* Can happen if "remember password" is not used. */ | |
| 1226 | + g.url.flags |= URL_PROMPT_PW; | |
| 1227 | + url_prompt_for_password(); | |
| 1228 | + zPw = g.url.passwd; | |
| 1229 | + } | |
| 1230 | + } | |
| 1223 | 1231 | if( zPw && zPw[0] ){ |
| 1224 | 1232 | zObs = obscure(zPw); |
| 1225 | 1233 | blob_appendf(&reqUri, "&token=%t", zObs); |
| 1226 | 1234 | fossil_free(zObs); |
| 1227 | 1235 | } |
| 1228 | 1236 |
| --- src/chat.c | |
| +++ src/chat.c | |
| @@ -1217,11 +1217,19 @@ | |
| 1217 | zObs = obscure(g.url.user); |
| 1218 | blob_appendf(&reqUri, "&resid=%t", zObs); |
| 1219 | fossil_free(zObs); |
| 1220 | } |
| 1221 | zPw = g.url.passwd; |
| 1222 | if( zPw==0 && isDefaultUrl ) zPw = unobscure(db_get("last-sync-pw", 0)); |
| 1223 | if( zPw && zPw[0] ){ |
| 1224 | zObs = obscure(zPw); |
| 1225 | blob_appendf(&reqUri, "&token=%t", zObs); |
| 1226 | fossil_free(zObs); |
| 1227 | } |
| 1228 |
| --- src/chat.c | |
| +++ src/chat.c | |
| @@ -1217,11 +1217,19 @@ | |
| 1217 | zObs = obscure(g.url.user); |
| 1218 | blob_appendf(&reqUri, "&resid=%t", zObs); |
| 1219 | fossil_free(zObs); |
| 1220 | } |
| 1221 | zPw = g.url.passwd; |
| 1222 | if( zPw==0 && isDefaultUrl ){ |
| 1223 | zPw = unobscure(db_get("last-sync-pw", 0)); |
| 1224 | if( zPw==0 ){ |
| 1225 | /* Can happen if "remember password" is not used. */ |
| 1226 | g.url.flags |= URL_PROMPT_PW; |
| 1227 | url_prompt_for_password(); |
| 1228 | zPw = g.url.passwd; |
| 1229 | } |
| 1230 | } |
| 1231 | if( zPw && zPw[0] ){ |
| 1232 | zObs = obscure(zPw); |
| 1233 | blob_appendf(&reqUri, "&token=%t", zObs); |
| 1234 | fossil_free(zObs); |
| 1235 | } |
| 1236 |