Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Remember which database was opened first (as the "main" database) in the g.zMainDbType global variable. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
99f52f3806ead4cdbef4b1a05f0dc361 |
| User & Date: | drh 2010-12-17 12:03:56.000 |
Context
|
2010-12-17
| ||
| 12:13 | Issue a warning to the user before using "ed" or "notepad" if no default text editor is set. ... (check-in: 115d90d8b0 user: drh tags: trunk) | |
| 12:03 | Remember which database was opened first (as the "main" database) in the g.zMainDbType global variable. ... (check-in: 99f52f3806 user: drh tags: trunk) | |
|
2010-12-16
| ||
| 15:03 | Tweaks to the merge conflict notation. ... (check-in: bf919337bb user: drh tags: trunk) | |
Changes
Changes to src/db.c.
| ︙ | ︙ | |||
616 617 618 619 620 621 622 |
** zDbName is the name of a database file. If no other database
** file is open, then open this one. If another database file is
** already open, then attach zDbName using the name zLabel.
*/
static void db_open_or_attach(const char *zDbName, const char *zLabel){
if( !g.db ){
g.db = openDatabase(zDbName);
| | < | 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 |
** zDbName is the name of a database file. If no other database
** file is open, then open this one. If another database file is
** already open, then attach zDbName using the name zLabel.
*/
static void db_open_or_attach(const char *zDbName, const char *zLabel){
if( !g.db ){
g.db = openDatabase(zDbName);
g.zMainDbType = zLabel;
db_connection_init();
}else{
#if defined(_WIN32)
zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
#endif
db_multi_exec("ATTACH DATABASE %Q AS %s", zDbName, zLabel);
}
}
/*
** Open the user database in "~/.fossil". Create the database anew if
** it does not already exist.
**
|
| ︙ | ︙ |
Changes to src/main.c.
| ︙ | ︙ | |||
53 54 55 56 57 58 59 | sqlite3 *db; /* The connection to the databases */ sqlite3 *dbConfig; /* Separate connection for global_config table */ int useAttach; /* True if global_config is attached to repository */ int configOpen; /* True if the config database is open */ long long int now; /* Seconds since 1970 */ int repositoryOpen; /* True if the main repository database is open */ char *zRepositoryName; /* Name of the repository database */ | | | 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | sqlite3 *db; /* The connection to the databases */ sqlite3 *dbConfig; /* Separate connection for global_config table */ int useAttach; /* True if global_config is attached to repository */ int configOpen; /* True if the config database is open */ long long int now; /* Seconds since 1970 */ int repositoryOpen; /* True if the main repository database is open */ char *zRepositoryName; /* Name of the repository database */ const char *zMainDbType;/* "configdb", "localdb", or "repository" */ const char *zHome; /* Name of user home directory */ int localOpen; /* True if the local database is open */ char *zLocalRoot; /* The directory holding the local database */ int minPrefix; /* Number of digits needed for a distinct UUID */ int fSqlTrace; /* True if -sqltrace flag is present */ int fSqlPrint; /* True if -sqlprint flag is present */ int fQuiet; /* True if -quiet flag is present */ |
| ︙ | ︙ |
Changes to src/stat.c.
| ︙ | ︙ | |||
27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
**
** Show statistics and global information about the repository.
*/
void stat_page(void){
i64 t, fsize;
int n, m;
int szMax, szAvg;
char zBuf[100];
login_check_credentials();
if( !g.okRead ){ login_needed(); return; }
style_header("Repository Statistics");
@ <table class="label-value">
@ <tr><th>Repository Size:</th><td>
| > | 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
**
** Show statistics and global information about the repository.
*/
void stat_page(void){
i64 t, fsize;
int n, m;
int szMax, szAvg;
const char *zDb;
char zBuf[100];
login_check_credentials();
if( !g.okRead ){ login_needed(); return; }
style_header("Repository Statistics");
@ <table class="label-value">
@ <tr><th>Repository Size:</th><td>
|
| ︙ | ︙ | |||
106 107 108 109 110 111 112 113 114 115 |
@ <tr><th>Fossil Version:</th><td>
@ %h(MANIFEST_DATE) %h(MANIFEST_VERSION) (%h(COMPILER_NAME))
@ </td></tr>
@ <tr><th>SQLite Version:</th><td>
sqlite3_snprintf(sizeof(zBuf), zBuf, "%.19s [%.10s] (%s)",
SQLITE_SOURCE_ID, &SQLITE_SOURCE_ID[20], SQLITE_VERSION);
@ %s(zBuf)
@ </td></tr>
@ <tr><th>Database Stats:</th><td>
| > > | | | | | | 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
@ <tr><th>Fossil Version:</th><td>
@ %h(MANIFEST_DATE) %h(MANIFEST_VERSION) (%h(COMPILER_NAME))
@ </td></tr>
@ <tr><th>SQLite Version:</th><td>
sqlite3_snprintf(sizeof(zBuf), zBuf, "%.19s [%.10s] (%s)",
SQLITE_SOURCE_ID, &SQLITE_SOURCE_ID[20], SQLITE_VERSION);
zDb = "repository";
if( strcmp(g.zMainDbType, zDb)==0 ) zDb = "main";
@ %s(zBuf)
@ </td></tr>
@ <tr><th>Database Stats:</th><td>
@ %d(db_int(0, "PRAGMA %s.page_count", zDb)) pages,
@ %d(db_int(0, "PRAGMA %s.page_size", zDb)) bytes/page,
@ %d(db_int(0, "PRAGMA %s.freelist_count", zDb)) free pages,
@ %s(db_text(0, "PRAGMA %s.encoding", zDb)),
@ %s(db_text(0, "PRAGMA %s.journal_mode", zDb)) mode
@ </td></tr>
@ </table>
style_footer();
}
|
Changes to src/undo.c.
| ︙ | ︙ | |||
149 150 151 152 153 154 155 156 |
static int undoActive = 0;
/*
** Begin capturing a snapshot that can be undone.
*/
void undo_begin(void){
int cid;
static const char zSql[] =
| > | | | | > | | 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 |
static int undoActive = 0;
/*
** Begin capturing a snapshot that can be undone.
*/
void undo_begin(void){
int cid;
const char *zDb = "localdb";
static const char zSql[] =
@ CREATE TABLE %s.undo(
@ pathname TEXT UNIQUE, -- Name of the file
@ redoflag BOOLEAN, -- 0 for undoable. 1 for redoable
@ existsflag BOOLEAN, -- True if the file exists
@ content BLOB -- Saved content
@ );
@ CREATE TABLE %s.undo_vfile AS SELECT * FROM vfile;
@ CREATE TABLE %s.undo_vmerge AS SELECT * FROM vmerge;
@ CREATE TABLE %s.undo_pending(undoId INTEGER PRIMARY KEY);
;
undo_reset();
if( strcmp(g.zMainDbType,zDb)==0 ) zDb = "main";
db_multi_exec(zSql, zDb, zDb, zDb, zDb);
cid = db_lget_int("checkout", 0);
db_lset_int("undo_checkout", cid);
db_lset_int("undo_available", 1);
undoActive = 1;
}
/*
|
| ︙ | ︙ |