Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch fix_mlink Excluding Merge-Ins
This is equivalent to a diff from 83a574b019 to a7caf19823
2011-11-03
| ||
08:06 | Correct fix in [d084043f79827]. This attempt at fixing the problem is closed. Closed-Leaf check-in: a7caf19823 user: viriketo tags: fix_mlink | |
01:22 | Refactor the name resolution logic in name.c. check-in: 7858a39b36 user: drh tags: trunk | |
2011-11-02
| ||
21:53 | Trying to fix some cases where the mlink table is bad build due to delta manifests. In this checkin, I fix the case when the child delta manifest changed back the file from some contents to those of its baseline manifest. The 'info' page was not showing these kind of changes. Should close the ticket [2ce64a315f]. check-in: cf5f2c4ea6 user: viriketo tags: fix_mlink | |
15:23 | Update the blob_write_to_file() routine so that it correctly handles binary files being send to standard output. check-in: 83a574b019 user: drh tags: trunk | |
2011-10-31
| ||
17:54 | Fix a potential division-by-zero in the file browser. check-in: 4d408219bd user: drh tags: trunk | |
Changes to src/manifest.c.
1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 |
pChildFile->zName, 0, isPublic, mperm); } } } if( pParent->zBaseline && pChild->zBaseline ){ /* Both parent and child are delta manifests. Look for files that ** are marked as deleted in the parent but which reappear in the child ** and show such files as being added in the child. */ for(i=0, pParentFile=pParent->aFile; i<pParent->nFile; i++, pParentFile++){ if( pParentFile->zUuid ) continue; pChildFile = manifest_file_seek(pChild, pParentFile->zName); if( pChildFile ){ add_one_mlink(cid, 0, pChildFile->zUuid, pChildFile->zName, 0, isPublic, manifest_file_mperm(pChildFile)); } } }else if( pChild->zBaseline==0 ){ /* pChild is a baseline. Look for files that are present in pParent ** but are missing from pChild and mark them as having been deleted. */ manifest_file_rewind(pParent); while( (pParentFile = manifest_file_next(pParent,0))!=0 ){ |
| > > < > > > | > > | > > > > |
1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 |
pChildFile->zName, 0, isPublic, mperm); } } } if( pParent->zBaseline && pChild->zBaseline ){ /* Both parent and child are delta manifests. Look for files that ** are marked as deleted in the parent but which reappear in the child ** and show such files as being added in the child. ** Also look for different uuids in the parent, to show that ** the file contents were back those of the baseline */ for(i=0, pParentFile=pParent->aFile; i<pParent->nFile; i++, pParentFile++){ pChildFile = manifest_file_seek(pChild, pParentFile->zName); if( pChildFile ){ int mperm = manifest_file_mperm(pChildFile); if( !pParentFile->zUuid ){ /* File added to the child */ add_one_mlink(cid, 0, pChildFile->zUuid, pChildFile->zName, 0, isPublic, mperm); }else if( fossil_strcmp(pChildFile->zUuid, pParentFile->zUuid) !=0 || manifest_file_mperm(pParentFile)!=mperm ){ /* File changed in the child back to the baseline uuid or perms */ add_one_mlink(cid, pParentFile->zUuid, pChildFile->zUuid, pChildFile->zName, 0, isPublic, mperm); } } } }else if( pChild->zBaseline==0 ){ /* pChild is a baseline. Look for files that are present in pParent ** but are missing from pChild and mark them as having been deleted. */ manifest_file_rewind(pParent); while( (pParentFile = manifest_file_next(pParent,0))!=0 ){ |