Fossil SCM

Detect when an "update" is a no-op and exit early, without doing any work.

drh 2010-09-13 20:41 UTC wolfgangFormat2CSS
Commit db313c32ce6edd0a6e8fe053447c3385b1d86402
1 file changed +2 -1
+2 -1
--- src/update.c
+++ src/update.c
@@ -24,11 +24,11 @@
2424
2525
/*
2626
** Return true if artifact rid is a version
2727
*/
2828
int is_a_version(int rid){
29
- return db_exists("SELECT 1 FROM event WHERE objid=%d AND type='ci'", rid);
29
+ return db_exists("SELECT 1 FROM event WHERE objid=%d AND type='ci'", rid);
3030
}
3131
3232
/*
3333
** COMMAND: update
3434
**
@@ -111,10 +111,11 @@
111111
tid = db_int(0, "SELECT rid FROM leaves, event"
112112
" WHERE event.objid=leaves.rid"
113113
" ORDER BY event.mtime DESC");
114114
}
115115
116
+ if( tid==vid ) return; /* Nothing to update */
116117
db_begin_transaction();
117118
vfile_check_signature(vid, 1);
118119
if( !nochangeFlag ) undo_begin();
119120
load_vfile_from_rid(tid);
120121
121122
--- src/update.c
+++ src/update.c
@@ -24,11 +24,11 @@
24
25 /*
26 ** Return true if artifact rid is a version
27 */
28 int is_a_version(int rid){
29 return db_exists("SELECT 1 FROM event WHERE objid=%d AND type='ci'", rid);
30 }
31
32 /*
33 ** COMMAND: update
34 **
@@ -111,10 +111,11 @@
111 tid = db_int(0, "SELECT rid FROM leaves, event"
112 " WHERE event.objid=leaves.rid"
113 " ORDER BY event.mtime DESC");
114 }
115
 
116 db_begin_transaction();
117 vfile_check_signature(vid, 1);
118 if( !nochangeFlag ) undo_begin();
119 load_vfile_from_rid(tid);
120
121
--- src/update.c
+++ src/update.c
@@ -24,11 +24,11 @@
24
25 /*
26 ** Return true if artifact rid is a version
27 */
28 int is_a_version(int rid){
29 return db_exists("SELECT 1 FROM event WHERE objid=%d AND type='ci'", rid);
30 }
31
32 /*
33 ** COMMAND: update
34 **
@@ -111,10 +111,11 @@
111 tid = db_int(0, "SELECT rid FROM leaves, event"
112 " WHERE event.objid=leaves.rid"
113 " ORDER BY event.mtime DESC");
114 }
115
116 if( tid==vid ) return; /* Nothing to update */
117 db_begin_transaction();
118 vfile_check_signature(vid, 1);
119 if( !nochangeFlag ) undo_begin();
120 load_vfile_from_rid(tid);
121
122

Keyboard Shortcuts

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