Fossil

Check-in [f5165dd05b]
Login

Check-in [f5165dd05b]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Make sure the zOrigName variable in the /doc page implementation is always initialized, even for early errors.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: f5165dd05bb99f6c68594e0e197ec37ae9db5598
User & Date: drh 2015-01-23 13:50:25.579
Context
2015-01-23
14:03
Make the now() SQL function available in the "fossil sql" command. ... (check-in: 0134654db6 user: drh tags: trunk)
13:50
Make sure the zOrigName variable in the /doc page implementation is always initialized, even for early errors. ... (check-in: f5165dd05b user: drh tags: trunk)
05:49
Fix build issue for MinGW due to missing 'ws2tcpip.h' functions. ... (check-in: 4c247512a8 user: mistachkin tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/doc.c.
397
398
399
400
401
402
403

404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
  if( zName[i]==0 ){
    zName = "index.wiki";
  }else{
    zName += i;
  }
  while( zName[0]=='/' ){ zName++; }
  g.zPath = mprintf("%s/%s/%s", g.zPath, zCheckin, zName);

  if( !file_is_simple_pathname(zName, 1) ){
    if( sqlite3_strglob("*/", zName)==0 ){
      zName = mprintf("%sindex.wiki", zName);
      if( !file_is_simple_pathname(zName, 1) ){
        goto doc_not_found;
      }
    }else{
      goto doc_not_found;
    }
  }
  zOrigName = zName;
  if( fossil_strcmp(zCheckin,"ckout")==0 && db_open_local(0)==0 ){
    sqlite3_snprintf(sizeof(zCheckin), zCheckin, "tip");
  }
  if( fossil_strcmp(zCheckin,"ckout")==0 ){
    /* Read from the local checkout */
    char *zFullpath;
    db_must_be_within_tree();







>


|







<







397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414

415
416
417
418
419
420
421
  if( zName[i]==0 ){
    zName = "index.wiki";
  }else{
    zName += i;
  }
  while( zName[0]=='/' ){ zName++; }
  g.zPath = mprintf("%s/%s/%s", g.zPath, zCheckin, zName);
  zOrigName = zName;
  if( !file_is_simple_pathname(zName, 1) ){
    if( sqlite3_strglob("*/", zName)==0 ){
      zOrigName = zName = mprintf("%sindex.wiki", zName);
      if( !file_is_simple_pathname(zName, 1) ){
        goto doc_not_found;
      }
    }else{
      goto doc_not_found;
    }
  }

  if( fossil_strcmp(zCheckin,"ckout")==0 && db_open_local(0)==0 ){
    sqlite3_snprintf(sizeof(zCheckin), zCheckin, "tip");
  }
  if( fossil_strcmp(zCheckin,"ckout")==0 ){
    /* Read from the local checkout */
    char *zFullpath;
    db_must_be_within_tree();