Artifact
5564f15d6c9823b8cf5c37986ce9e374d8ba8f64:
Ticket change
[5564f15d6c]
- New ticket
[be56c89def] Manifest parser bug causes fossil push to fail if a file look like a manifest but isn't one.
by
anonymous
2010-10-16 10:49:17.
0000: 44 20 32 30 31 30 2d 31 30 2d 31 36 54 31 30 3a D 2010-10-16T10:
0010: 34 39 3a 31 37 0a 4a 20 63 6f 6d 6d 65 6e 74 20 49:17.J comment
0020: 54 68 65 5c 73 62 75 67 5c 73 63 61 6e 5c 73 62 The\sbug\scan\sb
0030: 65 5c 73 72 65 70 72 6f 64 75 63 65 64 5c 73 77 e\sreproduced\sw
0040: 69 74 68 5c 73 74 68 65 5c 73 66 6f 6c 6c 6f 77 ith\sthe\sfollow
0050: 69 6e 67 5c 73 73 74 65 70 73 3a 5c 72 5c 6e 5c ing\ssteps:\r\n\
0060: 72 5c 6e 31 2e 5c 73 63 72 65 61 74 65 5c 73 61 r\n1.\screate\sa
0070: 6e 5c 73 65 6d 70 74 79 5c 73 72 65 70 6f 73 69 n\sempty\sreposi
0080: 74 6f 72 79 5c 72 5c 6e 5c 72 5c 6e 5c 72 5c 6e tory\r\n\r\n\r\n
0090: 32 2e 5c 73 63 6c 6f 6e 65 5c 73 69 74 5c 72 5c 2.\sclone\sit\r\
00a0: 6e 5c 72 5c 6e 33 2e 5c 73 6f 70 65 6e 5c 73 69 n\r\n3.\sopen\si
00b0: 74 5c 72 5c 6e 5c 72 5c 6e 34 2e 5c 73 43 72 65 t\r\n\r\n4.\sCre
00c0: 61 74 65 5c 73 61 5c 73 74 65 78 74 5c 73 66 69 ate\sa\stext\sfi
00d0: 6c 65 5c 73 63 6f 6e 74 61 69 6e 69 6e 67 5c 73 le\scontaining\s
00e0: 22 43 5c 73 62 6c 61 62 6c 61 22 5c 73 61 6e 64 "C\sblabla"\sand
00f0: 5c 73 6d 61 6b 65 5c 73 73 75 72 65 5c 73 69 74 \smake\ssure\sit
0100: 5c 73 64 6f 65 73 6e 27 74 5c 73 65 6e 64 5c 73 \sdoesn't\send\s
0110: 77 69 74 68 5c 73 61 5c 73 6e 65 77 6c 69 6e 65 with\sa\snewline
0120: 5c 73 63 68 61 72 61 63 74 65 72 5c 72 5c 6e 5c \scharacter\r\n\
0130: 72 5c 6e 35 2e 5c 73 63 6f 6d 6d 69 74 5c 73 69 r\n5.\scommit\si
0140: 74 5c 72 5c 6e 5c 72 5c 6e 36 2e 5c 73 54 72 79 t\r\n\r\n6.\sTry
0150: 5c 73 74 6f 5c 73 70 75 73 68 5c 73 69 74 3a 5c \sto\spush\sit:\
0160: 73 69 74 5c 73 73 68 6f 75 6c 64 5c 73 66 61 69 sit\sshould\sfai
0170: 6c 5c 73 77 69 74 68 5c 73 22 62 61 64 5c 73 63 l\swith\s"bad\sc
0180: 6f 6d 6d 61 6e 64 22 5c 73 66 6f 6c 6c 6f 77 65 ommand"\sfollowe
0190: 64 5c 73 62 79 5c 73 73 6f 6d 65 5c 73 73 74 75 d\sby\ssome\sstu
01a0: 66 66 2e 5c 72 5c 6e 5c 72 5c 6e 54 68 65 5c 73 ff.\r\n\r\nThe\s
01b0: 62 75 67 5c 73 69 73 5c 73 63 61 75 73 65 64 5c bug\sis\scaused\
01c0: 73 62 79 5c 73 74 68 65 5c 73 6d 61 6e 69 66 65 sby\sthe\smanife
01d0: 73 74 5c 73 70 61 72 73 65 72 5c 73 77 68 69 63 st\sparser\swhic
01e0: 68 5c 73 61 63 74 73 5c 73 69 6e 5c 73 61 5c 73 h\sacts\sin\sa\s
01f0: 64 65 73 74 72 75 63 74 69 76 65 5c 73 77 61 79 destructive\sway
0200: 3a 5c 73 77 68 65 6e 5c 73 69 74 5c 73 70 61 72 :\swhen\sit\spar
0210: 73 65 73 5c 73 61 5c 73 63 61 72 64 2c 5c 73 69 ses\sa\scard,\si
0220: 74 5c 73 75 73 65 73 5c 73 62 6c 6f 62 5f 74 65 t\suses\sblob_te
0230: 72 6d 69 6e 61 74 65 5c 73 77 68 69 63 68 5c 73 rminate\swhich\s
0240: 6d 6f 64 69 66 69 65 73 5c 73 74 68 65 5c 73 6f modifies\sthe\so
0250: 72 69 67 69 6e 61 6c 5c 73 62 75 66 66 65 72 2c riginal\sbuffer,
0260: 5c 73 65 76 65 6e 5c 73 69 66 5c 73 69 74 5c 73 \seven\sif\sit\s
0270: 74 75 72 6e 73 5c 73 6f 75 74 5c 73 61 66 74 65 turns\sout\safte
0280: 72 77 61 72 64 73 5c 73 74 68 61 74 5c 73 74 68 rwards\sthat\sth
0290: 65 5c 73 66 69 6c 65 5c 73 69 73 6e 27 74 5c 73 e\sfile\sisn't\s
02a0: 61 63 74 75 61 6c 6c 79 5c 73 61 5c 73 6d 61 6e actually\sa\sman
02b0: 69 66 65 73 74 5c 73 28 69 6e 5c 73 6d 79 5c 73 ifest\s(in\smy\s
02c0: 63 61 73 65 5c 73 69 74 5c 73 77 61 73 5c 73 6a case\sit\swas\sj
02d0: 75 73 74 5c 73 61 5c 73 73 6d 61 6c 6c 5c 73 62 ust\sa\ssmall\sb
02e0: 69 6e 61 72 79 5c 73 66 69 6c 65 5c 73 77 68 69 inary\sfile\swhi
02f0: 63 68 5c 73 68 61 70 70 65 6e 65 64 5c 73 74 6f ch\shappened\sto
0300: 5c 73 62 65 67 69 6e 5c 73 77 69 74 68 5c 73 43 \sbegin\swith\sC
0310: 5c 73 61 6e 64 5c 73 61 5c 73 74 61 62 75 6c 61 \sand\sa\stabula
0320: 74 69 6f 6e 5c 73 63 68 61 72 61 63 74 65 72 29 tion\scharacter)
0330: 2c 5c 73 77 68 69 63 68 5c 73 6f 76 65 72 77 72 ,\swhich\soverwr
0340: 69 74 65 5c 73 77 68 61 74 27 73 5c 73 6e 65 78 ite\swhat's\snex
0350: 74 5c 73 28 69 6e 5c 73 74 68 69 73 5c 73 63 61 t\s(in\sthis\sca
0360: 73 65 5c 73 69 74 5c 73 6f 76 65 72 77 72 69 74 se\sit\soverwrit
0370: 65 73 5c 73 74 68 65 5c 73 66 69 72 73 74 5c 73 es\sthe\sfirst\s
0380: 63 68 61 72 61 63 74 65 72 5c 73 6f 66 5c 73 74 character\sof\st
0390: 68 65 5c 73 66 6f 6c 6c 6f 77 69 6e 67 5c 73 66 he\sfollowing\sf
03a0: 69 6c 65 5c 73 63 61 72 64 5c 73 6f 66 5c 73 74 ile\scard\sof\st
03b0: 68 65 5c 73 78 66 65 72 5c 73 73 74 72 65 61 6d he\sxfer\sstream
03c0: 2c 5c 73 77 68 69 63 68 5c 73 63 6f 6e 66 75 73 ,\swhich\sconfus
03d0: 65 73 5c 73 74 68 65 5c 73 78 66 65 72 5c 73 70 es\sthe\sxfer\sp
03e0: 61 72 73 65 72 5c 73 61 6e 64 5c 73 6d 61 6b 65 arser\sand\smake
03f0: 5c 73 69 74 5c 73 65 6e 64 5c 73 75 70 5c 73 74 \sit\send\sup\st
0400: 72 79 69 6e 67 5c 73 74 6f 5c 73 70 61 72 73 65 rying\sto\sparse
0410: 5c 73 66 69 6c 65 5c 73 63 6f 6e 74 65 6e 74 5c \sfile\scontent\
0420: 73 61 73 5c 73 63 61 72 64 73 29 2e 5c 72 5c 6e sas\scards).\r\n
0430: 5c 72 5c 6e 49 27 76 65 5c 73 61 74 74 61 63 68 \r\nI've\sattach
0440: 65 64 5c 73 61 5c 73 71 75 69 63 6b 5c 73 66 69 ed\sa\squick\sfi
0450: 78 5c 73 70 61 74 63 68 5c 73 77 68 69 63 68 5c x\spatch\swhich\
0460: 73 73 69 6d 70 6c 79 5c 73 6d 61 6b 65 5c 73 61 ssimply\smake\sa
0470: 5c 73 63 6f 70 79 5c 73 6f 66 5c 73 74 68 65 5c \scopy\sof\sthe\
0480: 73 6c 69 6e 65 5c 73 62 65 66 6f 72 65 5c 73 70 sline\sbefore\sp
0490: 61 72 73 69 6e 67 5c 73 69 74 2e 5c 73 49 74 5c arsing\sit.\sIt\
04a0: 73 77 6f 72 6b 73 5c 73 62 75 74 5c 73 69 74 27 sworks\sbut\sit'
04b0: 73 5c 73 70 72 6f 62 61 62 6c 79 5c 73 70 6f 73 s\sprobably\spos
04c0: 73 69 62 6c 65 5c 73 74 6f 5c 73 73 6f 6c 76 65 sible\sto\ssolve
04d0: 5c 73 69 74 5c 73 77 69 74 68 6f 75 74 5c 73 74 \sit\swithout\st
04e0: 68 65 5c 73 61 64 64 69 74 69 6f 6e 61 6c 5c 73 he\sadditional\s
04f0: 63 6f 70 79 2e 0a 4a 20 66 6f 75 6e 64 69 6e 20 copy..J foundin
0500: 38 66 34 31 62 32 66 61 37 35 0a 4a 20 70 72 69 8f41b2fa75.J pri
0510: 76 61 74 65 5f 63 6f 6e 74 61 63 74 20 62 61 30 vate_contact ba0
0520: 37 63 36 64 35 64 33 63 35 65 30 34 34 66 38 32 7c6d5d3c5e044f82
0530: 33 38 31 35 34 61 37 66 33 39 37 36 32 63 63 31 38154a7f39762cc1
0540: 36 36 33 63 63 0a 4a 20 73 65 76 65 72 69 74 79 663cc.J severity
0550: 20 53 65 76 65 72 65 0a 4a 20 73 74 61 74 75 73 Severe.J status
0560: 20 4f 70 65 6e 0a 4a 20 74 69 74 6c 65 20 4d 61 Open.J title Ma
0570: 6e 69 66 65 73 74 5c 73 70 61 72 73 65 72 5c 73 nifest\sparser\s
0580: 62 75 67 5c 73 63 61 75 73 65 73 5c 73 66 6f 73 bug\scauses\sfos
0590: 73 69 6c 5c 73 70 75 73 68 5c 73 74 6f 5c 73 66 sil\spush\sto\sf
05a0: 61 69 6c 5c 73 69 66 5c 73 61 5c 73 66 69 6c 65 ail\sif\sa\sfile
05b0: 5c 73 6c 6f 6f 6b 5c 73 6c 69 6b 65 5c 73 61 5c \slook\slike\sa\
05c0: 73 6d 61 6e 69 66 65 73 74 5c 73 62 75 74 5c 73 smanifest\sbut\s
05d0: 69 73 6e 27 74 5c 73 6f 6e 65 0a 4a 20 74 79 70 isn't\sone.J typ
05e0: 65 20 43 6f 64 65 5f 44 65 66 65 63 74 0a 4b 20 e Code_Defect.K
05f0: 62 65 35 36 63 38 39 64 65 66 37 66 38 36 62 63 be56c89def7f86bc
0600: 62 64 37 36 36 30 30 39 63 64 33 36 35 66 36 61 bd766009cd365f6a
0610: 34 30 61 33 37 33 34 35 0a 55 20 61 6e 6f 6e 79 40a37345.U anony
0620: 6d 6f 75 73 0a 5a 20 37 38 65 32 34 35 36 32 36 mous.Z 78e245626
0630: 30 32 30 64 33 38 39 32 66 38 31 39 64 61 63 35 020d3892f819dac5
0640: 32 38 62 64 33 34 61 0a 28bd34a.