Fossil

Check-in [fa5302c2]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix to the fix to the mtime race condition that was supposed to be fixed by the prior check-in.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:fa5302c28d3b944dc6321a066ab4699666754e75
User & Date: drh 2010-12-13 23:50:07
Context
2010-12-14
00:06
Another bug fix associating with merges of branches which contain file name changes. check-in: 4c95b7b9 user: drh tags: trunk
2010-12-13
23:50
Fix to the fix to the mtime race condition that was supposed to be fixed by the prior check-in. check-in: fa5302c2 user: drh tags: trunk
23:04
Fix a long-standing mtime race condition that can cause problems if a "merge" takes places within the same second as an "update". check-in: af365579 user: drh tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/merge.c.

353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
    }else{
      rc = blob_merge(&p, &m, &v, &r);
    }
    if( rc>=0 ){
      if( !nochangeFlag ){
        blob_write_to_file(&r, zFullPath);
      }
      db_multi_exec("UPDATE vfile SET mtime=0 WHERE id=%d", ridv);
      if( rc>0 ){
        printf("***** %d merge conflicts in %s\n", rc, zName);
        nConflict++;
      }
    }else{
      printf("***** Cannot merge binary file %s\n", zName);
      nConflict++;







|







353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
    }else{
      rc = blob_merge(&p, &m, &v, &r);
    }
    if( rc>=0 ){
      if( !nochangeFlag ){
        blob_write_to_file(&r, zFullPath);
      }
      db_multi_exec("UPDATE vfile SET mtime=0 WHERE id=%d", idv);
      if( rc>0 ){
        printf("***** %d merge conflicts in %s\n", rc, zName);
        nConflict++;
      }
    }else{
      printf("***** Cannot merge binary file %s\n", zName);
      nConflict++;