@@ -965,11 +965,12 @@
965 965 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** populates:
966 966 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
967 967 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** - *zRevUuid = the fully-expanded value of zRev (owned by the
968 968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** caller). zRevUuid may be NULL.
969 969 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ** - *vid = the RID of zRevUuid. May not be NULL.
970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** - *pVid = the RID of zRevUuid. pVid May be NULL. If the vid
971 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** cannot be resolved or is ambiguous, pVid is not assigned.
971 972 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
972 973 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** - *frid = the RID of zFilename's blob content. May not be NULL
973 974 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** unless zFilename is also NULL. If BOTH of zFilename and frid are
974 975 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** NULL then no confirmation is done on the filename argument - only
975 976 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** zRev is checked.
@@ -979,38 +980,41 @@
979 980 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** returns false, it queues up an error response and the caller must
980 981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** return immediately.
981 982 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
982 983 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int fileedit_ajax_setup_filerev(const char * zRev,
983 984 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char ** zRevUuid,
984 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- int * vid,
985 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int * pVid,
985 986 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const char * zFilename,
986 987 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int * frid){
987 988 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char * zFileUuid = 0; /* file content UUID */
988 989 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const int checkFile = zFilename!=0 || frid!=0;
990 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int vid = 0;
989 991 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
990 992 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(checkFile && !fileedit_ajax_check_filename(zFilename)){
991 993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
992 994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- *vid = symbolic_name_to_rid(zRev, "ci");
994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(0==*vid){
995 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ vid = symbolic_name_to_rid(zRev, "ci");
996 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(0==vid){
995 997 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ajax_route_error(404,"Cannot resolve name as a checkin: %s",
996 998 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zRev);
997 999 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
998 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }else if(*vid<0){
1000 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }else if(vid<0){
999 1001 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ajax_route_error(400,"Checkin name is ambiguous: %s",
1000 1002 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zRev);
1001 1003 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
1004 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }else if(pVid!=0){
1005 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *pVid = vid;
1002 1006 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1003 1007 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(checkFile){
1004 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zFileUuid = fileedit_file_uuid(zFilename, *vid, 0);
1008 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zFileUuid = fileedit_file_uuid(zFilename, vid, 0);
1005 1009 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(zFileUuid==0){
1006 1010 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ajax_route_error(404, "Checkin does not contain file.");
1007 1011 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
1008 1012 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1009 1013 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1010 1014 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(zRevUuid!=0){
1011 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- *zRevUuid = rid_to_uuid(*vid);
1015 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *zRevUuid = rid_to_uuid(vid);
1012 1016 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1013 1017 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(checkFile){
1014 1018 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert(zFileUuid!=0);
1015 1019 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(frid!=0){
1016 1020 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*frid = fast_uuid_to_rid(zFileUuid);
@@ -1290,10 +1294,92 @@
1290 1294 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
end_fail:
1291 1295 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef fail
1292 1296 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
fossil_free(zFileUuid);
1293 1297 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc ? rc : 500;
1294 1298 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1299 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
1300 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /*
1301 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** Renders a list of all open leaves in JSON form:
1302 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ **
1303 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** [
1304 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** {checkin: UUID, branch: branchName, timestamp: string}
1305 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** ]
1306 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ **
1307 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** The entries are ordered newest first.
1308 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ **
1309 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** If zFirstUuid is not NULL then *zFirstUuid is set to a copy of the
1310 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** full UUID of the first (most recent) leaf, which must be freed by
1311 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** the caller. It is set to 0 if there are no leaves.
1312 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ */
1313 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static void fileedit_render_leaves_list(char ** zFirstUuid){
1314 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Blob sql = empty_blob;
1315 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Stmt q = empty_Stmt;
1316 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int i = 0;
1317 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
1318 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(zFirstUuid){
1319 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *zFirstUuid = 0;
1320 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1321 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_append(&sql, timeline_query_for_tty(), -1);
1322 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_append_sql(&sql, " AND blob.rid IN (SElECT rid FROM leaf "
1323 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "WHERE NOT EXISTS("
1324 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "SELECT 1 from tagxref WHERE tagid=%d AND "
1325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "tagtype>0 AND rid=leaf.rid"
1326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ")) "
1327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "ORDER BY mtime DESC", TAG_CLOSED);
1328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_prepare_blob(&q, &sql);
1329 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("[");
1330 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ while( SQLITE_ROW==db_step(&q) ){
1331 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * zUuid = db_column_text(&q, 1);
1332 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(i++){
1333 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX(",");
1334 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }else if(zFirstUuid){
1335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *zFirstUuid = fossil_strdup(zUuid);
1336 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1337 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("{");
1338 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("\"checkin\":%!j,", zUuid);
1339 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("\"branch\":%!j,", db_column_text(&q, 7));
1340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("\"timestamp\":%!j", db_column_text(&q, 2));
1341 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("}");
1342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1343 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("]");
1344 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_finalize(&q);
1345 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1346 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
1347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /*
1348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** For the given fully resolved UUID, renders a JSON object containing
1349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** the fileeedit-editable files in that checkin:
1350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ **
1351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** {
1352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** checkin: UUID,
1353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** editableFiles: [ filename1, ... filenameN ]
1354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** }
1355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ **
1356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** They are sorted by name using filename_collation().
1357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ */
1358 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static void fileedit_render_checkin_files(const char * zFullUuid){
1359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Blob sql = empty_blob;
1360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Stmt q = empty_Stmt;
1361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int i = 0;
1362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
1363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("{\"checkin\":%!j,"
1364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "\"editableFiles\":[", zFullUuid);
1365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_append_sql(&sql, "SELECT filename FROM files_of_checkin(%Q) "
1366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "ORDER BY filename %s",
1367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zFullUuid, filename_collation());
1368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_prepare_blob(&q, &sql);
1369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ while( SQLITE_ROW==db_step(&q) ){
1370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * zFilename = db_column_text(&q, 0);
1371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(fileedit_is_editable(zFilename)){
1372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(i++){
1373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX(",");
1374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("%!j", zFilename);
1376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1378 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ db_finalize(&q);
1379 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("]}");
1380 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1295 1381 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1296 1382 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/*
1297 1383 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** AJAX route /fileedit?ajax=filelist
1298 1384 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1299 1385 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** Fetches a JSON-format list of leaves and/or filenames for use in
@@ -1318,66 +1404,27 @@
1318 1404 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** }
1319 1405 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
**
1320 1406 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** On error it produces a JSON response as documented for
1321 1407 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** ajax_route_error().
1322 1408 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1323 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- static void fileedit_ajax_filelist(void){
1409 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static void fileedit_ajax_filelist(){
1324 1410 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const char * zCi = PD("checkin",P("ci"));
1325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Blob sql = empty_blob;
1326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Stmt q = empty_Stmt;
1327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- int i = 0;
1328 1411 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1329 1412 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(!ajax_route_bootstrap(1,0)){
1330 1413 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return;
1331 1414 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1332 1415 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cgi_set_content_type("application/json");
1333 1416 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(zCi!=0){
1334 1417 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char * zCiFull = 0;
1335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- int vid = 0;
1336 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(0==fileedit_ajax_setup_filerev(zCi, &zCiFull, &vid, 0, 0)){
1418 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(0==fileedit_ajax_setup_filerev(zCi, &zCiFull, 0, 0, 0)){
1337 1419 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* Error already reported */
1338 1420 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return;
1339 1421 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("{\"checkin\":%!j,"
1341 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "\"editableFiles\":[", zCiFull);
1342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_append_sql(&sql, "SELECT filename FROM files_of_checkin(%Q) "
1343 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "ORDER BY filename %s",
1344 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zCiFull, filename_collation());
1345 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- db_prepare_blob(&q, &sql);
1346 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- while( SQLITE_ROW==db_step(&q) ){
1347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- const char * zFilename = db_column_text(&q, 0);
1348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(fileedit_is_editable(zFilename)){
1349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(i++){
1350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX(",");
1351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("%!j", zFilename);
1353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- db_finalize(&q);
1356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("]}");
1422 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fileedit_render_checkin_files(zCiFull);
1423 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fossil_free(zCiFull);
1357 1424 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}else if(P("leaves")!=0){
1358 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_append(&sql, timeline_query_for_tty(), -1);
1359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_append_sql(&sql, " AND blob.rid IN (SElECT rid FROM leaf "
1360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "WHERE NOT EXISTS("
1361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "SELECT 1 from tagxref WHERE tagid=%d AND "
1362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "tagtype>0 AND rid=leaf.rid"
1363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ")) "
1364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "ORDER BY mtime DESC", TAG_CLOSED);
1365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- db_prepare_blob(&q, &sql);
1366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("[");
1367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- while( SQLITE_ROW==db_step(&q) ){
1368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(i++){
1369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX(",");
1370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("{");
1372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("\"checkin\":%!j,", db_column_text(&q, 1));
1373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("\"branch\":%!j,", db_column_text(&q, 7));
1374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("\"timestamp\":%!j", db_column_text(&q, 2));
1375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("}");
1376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("]");
1378 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- db_finalize(&q);
1425 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fileedit_render_leaves_list(0);
1379 1426 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}else{
1380 1427 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ajax_route_error(500, "Unhandled URL argument.");
1381 1428 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1382 1429 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1383 1430 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@@ -1509,24 +1556,14 @@
1509 1556 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** an internal implementation detail and may change with any given
1510 1557 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** build of this code. An unknown "name" value triggers an error, as
1511 1558 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** documented for ajax_route_error().
1512 1559 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1513 1560 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
void fileedit_page(void){
1514 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- const char * zFilename = 0; /* filename. We'll accept 'name'
1515 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- because that param is handled
1516 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- specially by the core. */
1517 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- const char * zRev = 0; /* checkin version */
1518 1561 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const char * zFileMime = 0; /* File mime type guess */
1519 1562 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CheckinMiniInfo cimi; /* Checkin state */
1520 1563 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int previewRenderMode = AJAX_RENDER_GUESS; /* preview mode */
1521 1564 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Blob err = empty_blob; /* Error report */
1522 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Blob endScript = empty_blob; /* Script code to run at the
1523 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- end. This content will be
1524 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- combined into a single JS
1525 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- function call, thus each
1526 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- entry must end with a
1527 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- semicolon. */
1528 1565 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const char *zAjax = P("name"); /* Name of AJAX route for
1529 1566 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
sub-dispatching. */
1530 1567 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1531 1568 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* Allow no access to this page without check-in privilege */
1532 1569 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
login_check_credentials();
@@ -1590,14 +1627,11 @@
1590 1627 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** transaction cleanly.
1591 1628 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1592 1629 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1593 1630 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int isMissingArg = 0;
1594 1631 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(fileedit_setup_cimi_from_p(&cimi, &err, &isMissingArg)==0){
1595 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zFilename = cimi.zFilename;
1596 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zRev = cimi.zParentUuid;
1597 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- assert(zRev);
1598 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- assert(zFilename);
1632 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ assert(cimi.zFilename);
1599 1633 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
zFileMime = mimetype_from_name(cimi.zFilename);
1600 1634 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}else if(isMissingArg!=0){
1601 1635 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* Squelch these startup warnings - they're non-fatal now but
1602 1636 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** used to be fatal. */
1603 1637 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
blob_reset(&err);
@@ -1932,40 +1966,10 @@
1932 1966 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"file/check-in combination are discarded.</li>");
1933 1967 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CX("</ul>");
1934 1968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1935 1969 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CX("</div>"/*#fileedit-tab-help*/);
1936 1970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1937 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {
1938 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- /* Dynamically populate the editor, display any error in the err
1939 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ** blob, and/or switch to tab #0, where the file selector
1940 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ** lives... */
1941 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript, "fossil.config['fileedit-glob'] = ");
1942 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- glob_render_as_json(fileedit_glob(), &endScript);
1943 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_append(&endScript, ";\n", 2);
1944 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_append(&endScript, "fossil.onPageLoad(", -1);
1945 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(zRev && zFilename){
1946 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- assert(0==blob_size(&err));
1947 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript,
1948 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "()=>fossil.page.loadFile(%!j,%!j)",
1949 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- zFilename, cimi.zParentUuid);
1950 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }else{
1951 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript,"function(){\n");
1952 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(blob_size(&err)>0){
1953 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript,
1954 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "fossil.error(%!j);\n",
1955 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_str(&err));
1956 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1957 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript,
1958 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "fossil.page.tabs.switchToTab(0);\n");
1959 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript,"}");
1960 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1961 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_appendf(&endScript,");\n");
1962 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }
1963 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
1964 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- blob_reset(&err);
1965 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CheckinMiniInfo_cleanup(&cimi);
1966 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
1967 1971 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
builtin_request_js("sbsdiff.js");
1968 1972 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
style_emit_fossil_js_apis(0, "fetch", "dom", "tabs", "confirmer",
1969 1973 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"storage", 0);
1970 1974 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
builtin_fulfill_js_requests();
1971 1975 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/*
@@ -1977,19 +1981,66 @@
1977 1981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
** the JS multiple times.
1978 1982 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
1979 1983 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ajax_emit_js_preview_modes(1);
1980 1984 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
builtin_request_js("fossil.page.fileedit.js");
1981 1985 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
builtin_fulfill_js_requests();
1982 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(blob_size(&endScript)>0){
1986 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
1987 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* Dynamically populate the editor, display any error in the err
1988 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** blob, and/or switch to tab #0, where the file selector
1989 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** lives. The extra C scopes here correspond to JS-level scopes,
1990 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ** to improve grokability. */
1983 1991 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
style_emit_script_tag(0,0);
1984 1992 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CX("\n(function(){\n");
1985 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("try{\n%b}\n"
1986 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "catch(e){"
1993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("try{\n");
1994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
1995 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ char * zFirstLeafUuid = 0;
1996 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.config['fileedit-glob'] = ");
1997 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ glob_render_json_to_cgi(fileedit_glob());
1998 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX(";\n");
1999 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(blob_size(&err)>0){
2000 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.error(%!j);\n", blob_str(&err));
2001 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2002 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* Populate the page with the current leaves and, if available,
2003 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ the selected checkin's file list, to save 1 or 2 XHR requests
2004 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ at startup. That makes this page uncacheable, but compressed
2005 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ delivery of this page is currently less than 6k. */
2006 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.page.initialLeaves = ");
2007 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fileedit_render_leaves_list(cimi.zParentUuid ? 0 : &zFirstLeafUuid);
2008 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX(";\n");
2009 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(zFirstLeafUuid){
2010 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ assert(!cimi.zParentUuid);
2011 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cimi.zParentUuid = zFirstLeafUuid;
2012 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ zFirstLeafUuid = 0;
2013 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2014 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(cimi.zParentUuid){
2015 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.page.initialFiles = ");
2016 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ fileedit_render_checkin_files(cimi.zParentUuid);
2017 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX(";\n");
2018 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2019 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.onPageLoad(function(){\n");
2020 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
2021 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(blob_size(&err)>0){
2022 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.error(%!j);\n",
2023 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_str(&err));
2024 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.page.tabs.switchToTab(0);\n");
2025 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2026 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(cimi.zParentUuid && cimi.zFilename){
2027 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("fossil.page.loadFile(%!j,%!j);\n",
2028 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cimi.zFilename, cimi.zParentUuid)
2029 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* Reminder we cannot embed the JSON-format
2030 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ content of the file here because if it contains
2031 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ a SCRIPT tag then it will break the whole page. */;
2032 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2033 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2034 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("});\n")/*fossil.onPageLoad()*/;
2035 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
2036 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("}catch(e){"
1987 2037 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
"fossil.error(e); console.error('Exception:',e);"
1988 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- "}\n",
1989 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- &endScript);
1990 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- CX("})();");
2038 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ "}\n");
2039 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CX("})();")/*anonymous function*/;
1991 2040 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
style_emit_script_tag(1,0);
1992 2041 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2042 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ blob_reset(&err);
2043 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CheckinMiniInfo_cleanup(&cimi);
1993 2044 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
db_end_transaction(0);
1994 2045 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
style_footer();
1995 2046 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1996 2047 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!