Fossil

Check-in [0e5f0da7eb]
Login

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

Overview
Comment:Allow newlines to serve as separators for multiple glob strings in the binary-glob setting (and in any other setting that accepts a list of glob patterns). Fix for ticket [ed23ef59cf0fb]
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 0e5f0da7eb9541df7187a30b3533537a5bbcf841
User & Date: drh 2013-03-06 02:18:20.373
Context
2013-03-06
07:50
Refactor the looks_like_utf*() functions to use a single output flags argument to convey the various pieces of blob status information. ... (check-in: 30a63b8b66 user: mistachkin tags: trunk)
06:58
Refactor the glob list handling code and add some tests. ... (check-in: 1b6c39c1aa user: mistachkin tags: globListRefactor)
02:18
Allow newlines to serve as separators for multiple glob strings in the binary-glob setting (and in any other setting that accepts a list of glob patterns). Fix for ticket [ed23ef59cf0fb] ... (check-in: 0e5f0da7eb user: drh tags: trunk)
02:15
Update the built-in SQLite to the latest 3.7.16 beta from upstream. ... (check-in: 6e460c3427 user: drh tags: trunk)
2013-03-05
10:04
Proposed fix for [ed23ef59cf]: Fossil ignoring "binary-glob" setting ... (Closed-Leaf check-in: e0e88821bd user: jan.nijtmans tags: ticket-ed23ef59cf)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/glob.c.
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
    if( zGlobList[0]==0 ) break;
    if( zGlobList[0]=='\'' || zGlobList[0]=='"' ){
      cTerm = zGlobList[0];
      zGlobList++;
    }else{
      cTerm = ',';
    }
    for(i=0; zGlobList[i] && zGlobList[i]!=cTerm; i++){}
    if( cTerm==',' ){
      while( i>0 && fossil_isspace(zGlobList[i-1]) ){ i--; }
    }
    blob_appendf(&expr, "%s%s GLOB '%#q'", zSep, zVal, i, zGlobList);
    zSep = " OR ";
    if( cTerm!=',' && zGlobList[i] ) i++;
    zGlobList += i;







|







52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
    if( zGlobList[0]==0 ) break;
    if( zGlobList[0]=='\'' || zGlobList[0]=='"' ){
      cTerm = zGlobList[0];
      zGlobList++;
    }else{
      cTerm = ',';
    }
    for(i=0; zGlobList[i] && zGlobList[i]!=cTerm && zGlobList[i]!='\n'; i++){}
    if( cTerm==',' ){
      while( i>0 && fossil_isspace(zGlobList[i-1]) ){ i--; }
    }
    blob_appendf(&expr, "%s%s GLOB '%#q'", zSep, zVal, i, zGlobList);
    zSep = " OR ";
    if( cTerm!=',' && zGlobList[i] ) i++;
    zGlobList += i;