Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | merge trunk |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | ticket-d17d6e5b17 |
| Files: | files | file ages | folders |
| SHA1: |
8df9d37834241ea0fd808036e151a8cd |
| User & Date: | jan.nijtmans 2013-01-27 21:31:44.634 |
Context
|
2013-01-27
| ||
| 21:56 | Fix file_simplify_name and file_is_absolute_path for cygwin check-in: b293b744db user: jan.nijtmans tags: ticket-d17d6e5b17 | |
| 21:31 | merge trunk check-in: 8df9d37834 user: jan.nijtmans tags: ticket-d17d6e5b17 | |
| 21:06 | issue [cd201d69bb]: For completeness, let's add .dot and .dotx too. check-in: c5ed222748 user: jan.nijtmans tags: trunk | |
| 20:29 | merge trunk, combine with "allow-backslash-on-unix" branch check-in: 38159dae32 user: jan.nijtmans tags: ticket-d17d6e5b17 | |
Changes
Changes to src/doc.c.
| ︙ | ︙ | |||
120 121 122 123 124 125 126 |
{ "css", 3, "text/css" },
{ "dcr", 3, "application/x-director" },
{ "deb", 3, "application/x-debian-package" },
{ "dir", 3, "application/x-director" },
{ "dl", 2, "video/dl" },
{ "dms", 3, "application/octet-stream" },
{ "doc", 3, "application/msword" },
| > | > | 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
{ "css", 3, "text/css" },
{ "dcr", 3, "application/x-director" },
{ "deb", 3, "application/x-debian-package" },
{ "dir", 3, "application/x-director" },
{ "dl", 2, "video/dl" },
{ "dms", 3, "application/octet-stream" },
{ "doc", 3, "application/msword" },
{ "docx", 4, "application/vnd.openxmlformats-officedocument.wordprocessingml.document"},
{ "dot", 3, "application/msword" },
{ "dotx", 4, "application/vnd.openxmlformats-officedocument.wordprocessingml.template"},
{ "drw", 3, "application/drafting" },
{ "dvi", 3, "application/x-dvi" },
{ "dwg", 3, "application/acad" },
{ "dxf", 3, "application/dxf" },
{ "dxr", 3, "application/x-director" },
{ "eps", 3, "application/postscript" },
{ "etx", 3, "text/x-setext" },
|
| ︙ | ︙ | |||
197 198 199 200 201 202 203 204 205 206 |
{ "pgn", 3, "application/x-chess-pgn" },
{ "pgp", 3, "application/pgp" },
{ "pl", 2, "application/x-perl" },
{ "pm", 2, "application/x-perl" },
{ "png", 3, "image/png" },
{ "pnm", 3, "image/x-portable-anymap" },
{ "pot", 3, "application/mspowerpoint" },
{ "ppm", 3, "image/x-portable-pixmap" },
{ "pps", 3, "application/mspowerpoint" },
{ "ppt", 3, "application/mspowerpoint" },
| > > | | 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 |
{ "pgn", 3, "application/x-chess-pgn" },
{ "pgp", 3, "application/pgp" },
{ "pl", 2, "application/x-perl" },
{ "pm", 2, "application/x-perl" },
{ "png", 3, "image/png" },
{ "pnm", 3, "image/x-portable-anymap" },
{ "pot", 3, "application/mspowerpoint" },
{ "potx", 4, "application/vnd.openxmlformats-officedocument.presentationml.template"},
{ "ppm", 3, "image/x-portable-pixmap" },
{ "pps", 3, "application/mspowerpoint" },
{ "ppsx", 4, "application/vnd.openxmlformats-officedocument.presentationml.slideshow"},
{ "ppt", 3, "application/mspowerpoint" },
{ "pptx", 4, "application/vnd.openxmlformats-officedocument.presentationml.presentation"},
{ "ppz", 3, "application/mspowerpoint" },
{ "pre", 3, "application/x-freelance" },
{ "prt", 3, "application/pro_eng" },
{ "ps", 2, "application/postscript" },
{ "qt", 2, "video/quicktime" },
{ "ra", 2, "audio/x-realaudio" },
{ "ram", 3, "audio/x-pn-realaudio" },
|
| ︙ | ︙ | |||
275 276 277 278 279 280 281 |
{ "wrl", 3, "model/vrml" },
{ "wvx", 3, "video/x-ms-wvx" },
{ "xbm", 3, "image/x-xbitmap" },
{ "xlc", 3, "application/vnd.ms-excel" },
{ "xll", 3, "application/vnd.ms-excel" },
{ "xlm", 3, "application/vnd.ms-excel" },
{ "xls", 3, "application/vnd.ms-excel" },
| | | 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 |
{ "wrl", 3, "model/vrml" },
{ "wvx", 3, "video/x-ms-wvx" },
{ "xbm", 3, "image/x-xbitmap" },
{ "xlc", 3, "application/vnd.ms-excel" },
{ "xll", 3, "application/vnd.ms-excel" },
{ "xlm", 3, "application/vnd.ms-excel" },
{ "xls", 3, "application/vnd.ms-excel" },
{ "xlsx", 4, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},
{ "xlw", 3, "application/vnd.ms-excel" },
{ "xml", 3, "text/xml" },
{ "xpm", 3, "image/x-xpixmap" },
{ "xwd", 3, "image/x-xwindowdump" },
{ "xyz", 3, "chemical/x-pdb" },
{ "zip", 3, "application/zip" },
};
|
| ︙ | ︙ |
Changes to src/file.c.
| ︙ | ︙ | |||
481 482 483 484 485 486 487 | /* ** Return true if the filename given is a valid filename for ** a file in a repository. Valid filenames follow all of the ** following rules: ** ** * Does not begin with "/" ** * Does not contain any path element named "." or ".." | < | 481 482 483 484 485 486 487 488 489 490 491 492 493 494 | /* ** Return true if the filename given is a valid filename for ** a file in a repository. Valid filenames follow all of the ** following rules: ** ** * Does not begin with "/" ** * Does not contain any path element named "." or ".." ** * Does not end with "/". ** * Does not contain two or more "/" characters in a row. ** * Contains at least one character ** ** Invalid UTF8 characters result in a false return if bStrictUtf8 is ** true. If bStrictUtf8 is false, invalid UTF8 characters are silently ** ignored. See http://en.wikipedia.org/wiki/UTF-8#Invalid_byte_sequences |
| ︙ | ︙ | |||
788 789 790 791 792 793 794 |
fossil_print(" file_isdir = %d\n", file_wd_isdir(zName));
}
}
/*
** Return TRUE if the given filename is canonical.
**
| | | < < | 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 |
fossil_print(" file_isdir = %d\n", file_wd_isdir(zName));
}
}
/*
** Return TRUE if the given filename is canonical.
**
** Canonical names are full pathnames using "/" not "\" and which
** contain no "/./" or "/../" terms.
*/
int file_is_canonical(const char *z){
int i;
if( z[0]!='/'
#if defined(_WIN32)
&& (z[0]==0 || z[1]!=':' || z[2]!='/')
#endif
) return 0;
for(i=0; z[i]; i++){
if( z[i]=='\\' ) return 0;
if( z[i]=='/' ){
if( z[i+1]=='.' ){
if( z[i+2]=='/' || z[i+2]==0 ) return 0;
if( z[i+2]=='.' && (z[i+3]=='/' || z[i+3]==0) ) return 0;
}
}
}
|
| ︙ | ︙ |