Hex Artifact Content
Not logged in

Artifact 5feed5405f20d13a0eaf05eadf7dda00be8e7251:

Attachment "against_massive_append.patch" to ticket [a4295406dd] added by anonymous 2011-01-04 15:51:10.
0000: 49 6e 64 65 78 3a 20 73 72 63 2f 63 68 65 63 6b  Index: src/check
0010: 69 6e 2e 63 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  in.c.===========
0020: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0030: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0040: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0050: 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 20 73 72 63  ========.--- src
0060: 2f 63 68 65 63 6b 69 6e 2e 63 0a 2b 2b 2b 20 73  /checkin.c.+++ s
0070: 72 63 2f 63 68 65 63 6b 69 6e 2e 63 0a 40 40 20  rc/checkin.c.@@ 
0080: 2d 36 35 35 2c 31 35 20 2b 36 35 35 2c 31 35 20  -655,15 +655,15 
0090: 40 40 0a 20 20 20 20 20 20 20 62 6c 6f 62 5f 61  @@.       blob_a
00a0: 70 70 65 6e 64 66 28 70 4f 75 74 2c 20 22 46 20  ppendf(pOut, "F 
00b0: 25 46 5c 6e 22 2c 20 70 46 69 6c 65 2d 3e 7a 4e  %F\n", pFile->zN
00c0: 61 6d 65 29 3b 0a 20 20 20 20 20 20 20 70 46 69  ame);.       pFi
00d0: 6c 65 20 3d 20 6d 61 6e 69 66 65 73 74 5f 66 69  le = manifest_fi
00e0: 6c 65 5f 6e 65 78 74 28 70 42 61 73 65 6c 69 6e  le_next(pBaselin
00f0: 65 2c 20 30 29 3b 0a 20 20 20 20 20 20 20 6e 46  e, 0);.       nF
0100: 42 63 61 72 64 2b 2b 3b 0a 20 20 20 20 20 7d 0a  Bcard++;.     }.
0110: 20 20 20 20 20 63 6d 70 20 3d 20 31 3b 0a 2b 20       cmp = 1;.+ 
0120: 20 20 20 62 6c 6f 62 5f 72 65 73 69 7a 65 28 26     blob_resize(&
0130: 66 69 6c 65 6e 61 6d 65 2c 20 6e 42 61 73 65 6e  filename, nBasen
0140: 61 6d 65 29 3b 0a 20 20 20 20 20 69 66 28 20 70  ame);.     if( p
0150: 46 69 6c 65 3d 3d 30 0a 20 20 20 20 20 20 20 7c  File==0.       |
0160: 7c 20 28 63 6d 70 20 3d 20 66 6f 73 73 69 6c 5f  | (cmp = fossil_
0170: 73 74 72 63 6d 70 28 70 46 69 6c 65 2d 3e 7a 4e  strcmp(pFile->zN
0180: 61 6d 65 2c 7a 4e 61 6d 65 29 29 21 3d 30 0a 20  ame,zName))!=0. 
0190: 20 20 20 20 20 20 7c 7c 20 66 6f 73 73 69 6c 5f        || fossil_
01a0: 73 74 72 63 6d 70 28 70 46 69 6c 65 2d 3e 7a 55  strcmp(pFile->zU
01b0: 75 69 64 2c 20 7a 55 75 69 64 29 21 3d 30 0a 20  uid, zUuid)!=0. 
01c0: 20 20 20 20 29 7b 0a 2d 20 20 20 20 20 20 62 6c      ){.-      bl
01d0: 6f 62 5f 72 65 73 69 7a 65 28 26 66 69 6c 65 6e  ob_resize(&filen
01e0: 61 6d 65 2c 20 6e 42 61 73 65 6e 61 6d 65 29 3b  ame, nBasename);
01f0: 0a 20 20 20 20 20 20 20 69 66 28 20 7a 4f 72 69  .       if( zOri
0200: 67 20 26 26 20 21 69 73 53 65 6c 65 63 74 65 64  g && !isSelected
0210: 20 29 7b 20 7a 4e 61 6d 65 20 3d 20 7a 4f 72 69   ){ zName = zOri
0220: 67 3b 20 7a 4f 72 69 67 20 3d 20 30 3b 20 7d 0a  g; zOrig = 0; }.
0230: 20 20 20 20 20 20 20 69 66 28 20 7a 4f 72 69 67         if( zOrig
0240: 3d 3d 30 20 7c 7c 20 66 6f 73 73 69 6c 5f 73 74  ==0 || fossil_st
0250: 72 63 6d 70 28 7a 4f 72 69 67 2c 7a 4e 61 6d 65  rcmp(zOrig,zName
0260: 29 3d 3d 30 20 29 7b 0a 20 20 20 20 20 20 20 20  )==0 ){.        
0270: 20 62 6c 6f 62 5f 61 70 70 65 6e 64 66 28 70 4f   blob_appendf(pO
0280: 75 74 2c 20 22 46 20 25 46 20 25 73 25 73 5c 6e  ut, "F %F %s%s\n
0290: 22 2c 20 7a 4e 61 6d 65 2c 20 7a 55 75 69 64 2c  ", zName, zUuid,
02a0: 20 7a 50 65 72 6d 29 3b 0a 20 20 20 20 20 20 20   zPerm);.       
02b0: 7d 65 6c 73 65 7b 0a 20 20 20 20 20 20 20 20 20  }else{.         
02c0: 69 66 28 20 7a 50 65 72 6d 5b 30 5d 3d 3d 30 20  if( zPerm[0]==0 
02d0: 29 7b 20 7a 50 65 72 6d 20 3d 20 22 20 77 22 3b  ){ zPerm = " w";
02e0: 20 7d 0a 0a                                       }..