Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | fix [a395f43b33e8e48d4c72d158530bdd88c2eebb5d] |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
afe70a464686a3085141c03a1aee3ece |
| User & Date: | ron 2010-01-24 07:07:53.000 |
References
|
2010-01-24
| ||
| 07:14 | • Fixed ticket [0a0f00d434]: Wiki edit textarea display and Wiki name does not support non-ASCII word plus 2 other changes artifact: 640812641b user: ron | |
| 07:08 | • Fixed ticket [eed6d07c6e]: Non-ASCII characters not allowed in wiki page titles plus 2 other changes artifact: 94199db01e user: ron | |
| 07:07 | • Fixed ticket [a395f43b33]: The wiki name "表予申能十ソ" is not well-formed. plus 2 other changes artifact: 9edb7e69dc user: ron | |
Context
|
2010-01-24
| ||
| 07:53 | fix [7df27f5236] check-in: 6bbb22d4fa user: ron tags: trunk | |
| 07:07 | fix [a395f43b33e8e48d4c72d158530bdd88c2eebb5d] check-in: afe70a4646 user: ron tags: trunk | |
| 01:41 | Fix a bug in "fossil rm". Ticket [15f8f4a4252] check-in: fbcefb6e4e user: drh tags: trunk | |
Changes
Changes to src/manifest.c.
| ︙ | ︙ | |||
384 385 386 387 388 389 390 |
case 'L': {
md5sum_step_text(blob_buffer(&line), blob_size(&line));
if( p->zWikiTitle!=0 ) goto manifest_syntax_error;
if( blob_token(&line, &a1)==0 ) goto manifest_syntax_error;
if( blob_token(&line, &a2)!=0 ) goto manifest_syntax_error;
p->zWikiTitle = blob_terminate(&a1);
defossilize(p->zWikiTitle);
| | | 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 |
case 'L': {
md5sum_step_text(blob_buffer(&line), blob_size(&line));
if( p->zWikiTitle!=0 ) goto manifest_syntax_error;
if( blob_token(&line, &a1)==0 ) goto manifest_syntax_error;
if( blob_token(&line, &a2)!=0 ) goto manifest_syntax_error;
p->zWikiTitle = blob_terminate(&a1);
defossilize(p->zWikiTitle);
if( !wiki_name_is_wellformed((const unsigned char *)p->zWikiTitle) ){
goto manifest_syntax_error;
}
break;
}
/*
** M <uuid>
|
| ︙ | ︙ |
Changes to src/wiki.c.
| ︙ | ︙ | |||
33 34 35 36 37 38 39 | ** Return true if the input string is a well-formed wiki page name. ** ** Well-formed wiki page names do not begin or end with whitespace, ** and do not contain tabs or other control characters and do not ** contain more than a single space character in a row. Well-formed ** names must be between 3 and 100 chracters in length, inclusive. */ | | | 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
** Return true if the input string is a well-formed wiki page name.
**
** Well-formed wiki page names do not begin or end with whitespace,
** and do not contain tabs or other control characters and do not
** contain more than a single space character in a row. Well-formed
** names must be between 3 and 100 chracters in length, inclusive.
*/
int wiki_name_is_wellformed(const unsigned char *z){
int i;
if( z[0]<=0x20 ){
return 0;
}
for(i=1; z[i]; i++){
if( z[i]<0x20 ) return 0;
if( z[i]==0x20 && z[i-1]==0x20 ) return 0;
|
| ︙ | ︙ | |||
65 66 67 68 69 70 71 |
}
/*
** Check a wiki name. If it is not well-formed, then issue an error
** and return true. If it is well-formed, return false.
*/
static int check_name(const char *z){
| | | 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
}
/*
** Check a wiki name. If it is not well-formed, then issue an error
** and return true. If it is well-formed, return false.
*/
static int check_name(const char *z){
if( !wiki_name_is_wellformed((const unsigned char *)z) ){
style_header("Wiki Page Name Error");
@ The wiki name "<b>%h(z)</b>" is not well-formed. Rules for
@ wiki page names:
well_formed_wiki_name_rules();
style_footer();
return 1;
}
|
| ︙ | ︙ | |||
343 344 345 346 347 348 349 |
const char *zName;
login_check_credentials();
if( !g.okNewWiki ){
login_needed();
return;
}
zName = PD("name","");
| | | 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 |
const char *zName;
login_check_credentials();
if( !g.okNewWiki ){
login_needed();
return;
}
zName = PD("name","");
if( zName[0] && wiki_name_is_wellformed((const unsigned char *)zName) ){
cgi_redirectf("wikiedit?name=%T", zName);
}
style_header("Create A New Wiki Page");
@ <p>Rules for wiki page names:
well_formed_wiki_name_rules();
@ </p>
@ <form method="POST" action="%s(g.zBaseURL)/wikinew">
|
| ︙ | ︙ |
Changes to src/wikiformat.c.
| ︙ | ︙ | |||
1013 1014 1015 1016 1017 1018 1019 |
}else{
zTerm = "";
}
}
}else if( g.okHistory ){
blob_appendf(p->pOut, "<a href=\"%s/info/%s\">", g.zBaseURL, zTarget);
}
| | | 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 |
}else{
zTerm = "";
}
}
}else if( g.okHistory ){
blob_appendf(p->pOut, "<a href=\"%s/info/%s\">", g.zBaseURL, zTarget);
}
}else if( wiki_name_is_wellformed((const unsigned char *)zTarget) ){
blob_appendf(p->pOut, "<a href=\"%s/wiki?name=%T\">", g.zBaseURL, zTarget);
}else{
blob_appendf(p->pOut, "[bad-link: %h]", zTarget);
zTerm = "";
}
assert( strlen(zTerm)<nClose );
strcpy(zClose, zTerm);
|
| ︙ | ︙ |