Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | c1 |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | mistake |
Files: | files | file ages | folders |
SHA1: |
8440ddab4c4973b67c538509cf872d44 |
User & Date: | jan.nijtmans 2015-11-06 09:19:51 |
Context
2015-11-06
| ||
09:20 | base file ... (Closed-Leaf check-in: 942a3142 user: jan.nijtmans tags: mistake) | |
09:19 | c1 ... (check-in: 8440ddab user: jan.nijtmans tags: mistake) | |
08:09 | Use the same definition of BINARY in multiple places of fossil. Reported by sky5walk. ... (check-in: b51ba293 user: jan.nijtmans tags: trunk) | |
Changes
Added amend/datafile.
> | 1 | data |
Changes to src/lookslike.c.
︙ | ︙ | |||
35 36 37 38 39 40 41 | /* ** Output flags for the looks_like_utf8() and looks_like_utf16() routines used ** to convey status information about the blob content. */ #define LOOK_NONE ((int)0x00000000) /* Nothing special was found. */ #define LOOK_NUL ((int)0x00000001) /* One or more NUL chars were found. */ | < | < | | | | | | > > | 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | /* ** Output flags for the looks_like_utf8() and looks_like_utf16() routines used ** to convey status information about the blob content. */ #define LOOK_NONE ((int)0x00000000) /* Nothing special was found. */ #define LOOK_NUL ((int)0x00000001) /* One or more NUL chars were found. */ #define LOOK_LONE_CR ((int)0x00000002) /* An unpaired CR char was found. */ #define LOOK_LONE_LF ((int)0x00000004) /* An unpaired LF char was found. */ #define LOOK_CRLF ((int)0x00000008) /* One or more CR/LF pairs were found. */ #define LOOK_LONG ((int)0x00000010) /* An over length line was found. */ #define LOOK_ODD ((int)0x00000020) /* An odd number of bytes was found. */ #define LOOK_SHORT ((int)0x00000040) /* Unable to perform full check. */ #define LOOK_INVALID ((int)0x00000080) /* Invalid sequence was found. */ #define LOOK_BINARY (LOOK_NUL | LOOK_LONG | LOOK_SHORT) /* May be binary. */ #define LOOK_EOL (LOOK_LONE_CR | LOOK_LONE_LF | LOOK_CRLF) /* Line seps. */ #define LOOK_CR (LOOK_LONE_CR | LOOK_CRLF) /* One or more CR chars were found. */ #define LOOK_LF (LOOK_LONE_LF | LOOK_CRLF) /* One or more LF chars were found. */ #endif /* INTERFACE */ /* ** This function attempts to scan each logical line within the blob to ** determine the type of content it appears to contain. The return value ** is a combination of one or more of the LOOK_XXX flags (see above): |
︙ | ︙ | |||
91 92 93 94 95 96 97 | int j, c, flags = LOOK_NONE; /* Assume UTF-8 text, prove otherwise */ if( n==0 ) return flags; /* Empty file -> text */ c = *z; if( c==0 ){ flags |= LOOK_NUL; /* NUL character in a file -> binary */ }else if( c=='\r' ){ | < < < | 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | int j, c, flags = LOOK_NONE; /* Assume UTF-8 text, prove otherwise */ if( n==0 ) return flags; /* Empty file -> text */ c = *z; if( c==0 ){ flags |= LOOK_NUL; /* NUL character in a file -> binary */ }else if( c=='\r' ){ if( n<=1 || z[1]!='\n' ){ flags |= LOOK_LONE_CR; /* More chars, next char is not LF */ } } j = (c!='\n'); if( !j ) flags |= (LOOK_LF | LOOK_LONE_LF); /* Found LF as first char */ while( !(flags&stopFlags) && --n>0 ){ int c2 = c; c = *++z; ++j; if( c==0 ){ flags |= LOOK_NUL; /* NUL character in a file -> binary */ }else if( c=='\n' ){ if( c2=='\r' ){ flags |= (LOOK_CR | LOOK_CRLF); /* Found LF preceded by CR */ }else{ flags |= LOOK_LONE_LF; } if( j>LENGTH_MASK ){ flags |= LOOK_LONG; /* Very long line -> binary */ } j = 0; }else if( c=='\r' ){ if( n<=1 || z[1]!='\n' ){ flags |= LOOK_LONE_CR; /* More chars, next char is not LF */ } } } if( n ){ flags |= LOOK_SHORT; /* The whole blob was not examined */ |
︙ | ︙ | |||
240 241 242 243 244 245 246 | c = *z; if( bReverse ){ c = UTF16_SWAP(c); } if( c==0 ){ flags |= LOOK_NUL; /* NUL character in a file -> binary */ }else if( c=='\r' ){ | < < < | 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 | c = *z; if( bReverse ){ c = UTF16_SWAP(c); } if( c==0 ){ flags |= LOOK_NUL; /* NUL character in a file -> binary */ }else if( c=='\r' ){ if( n<(2*sizeof(WCHAR_T)) || UTF16_SWAP_IF(bReverse, z[1])!='\n' ){ flags |= LOOK_LONE_CR; /* More chars, next char is not LF */ } } j = (c!='\n'); if( !j ) flags |= (LOOK_LF | LOOK_LONE_LF); /* Found LF as first char */ while( !(flags&stopFlags) && ((n-=sizeof(WCHAR_T))>=sizeof(WCHAR_T)) ){ int c2 = c; c = *++z; if( bReverse ){ c = UTF16_SWAP(c); } ++j; if( c==0 ){ flags |= LOOK_NUL; /* NUL character in a file -> binary */ }else if( c=='\n' ){ if( c2=='\r' ){ flags |= (LOOK_CR | LOOK_CRLF); /* Found LF preceded by CR */ }else{ flags |= LOOK_LONE_LF; } if( j>UTF16_LENGTH_MASK ){ flags |= LOOK_LONG; /* Very long line -> binary */ } j = 0; }else if( c=='\r' ){ if( n<(2*sizeof(WCHAR_T)) || UTF16_SWAP_IF(bReverse, z[1])!='\n' ){ flags |= LOOK_LONE_CR; /* More chars, next char is not LF */ } } } if( n ){ flags |= LOOK_SHORT; /* The whole blob was not examined */ |
︙ | ︙ |
Changes to test/tester.tcl.
︙ | ︙ | |||
169 170 171 172 173 174 175 | # Create and open a new Fossil repository and clean the checkout # proc repo_init {{filename ".rep.fossil"}} { if {$::env(HOME) ne [pwd]} { catch {exec $::fossilexe info} res if {![regexp {use --repository} $res]} { | | > | 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 | # Create and open a new Fossil repository and clean the checkout # proc repo_init {{filename ".rep.fossil"}} { if {$::env(HOME) ne [pwd]} { catch {exec $::fossilexe info} res if {![regexp {use --repository} $res]} { puts stderr "In an open checkout: cannot initialize a new repository here." uplevel 1 return } # Fossil will write data on $HOME, running 'fossil new' here. # We need not to clutter the $HOME of the test caller. # set ::env(HOME) [pwd] } catch {exec $::fossilexe close -f} |
︙ | ︙ |