Fossil SCM
Show all files in fusefs directory listings. Previously, if one file's name is a prefix of another file's name in the same directory, the file with the longer name would not be included in directory listings.
Commit
f8f5a8159ee934f10a85c9629d5a102bd54f23f9
Parent
47beb495c4c15c2…
1 file changed
+2
-1
+2
-1
| --- src/fusefs.c | ||
| +++ src/fusefs.c | ||
| @@ -207,11 +207,12 @@ | ||
| 207 | 207 | filler(buf, ".", NULL, 0); |
| 208 | 208 | filler(buf, "..", NULL, 0); |
| 209 | 209 | manifest_file_rewind(fusefs.pMan); |
| 210 | 210 | if( n==2 ){ |
| 211 | 211 | while( (pFile = manifest_file_next(fusefs.pMan, 0))!=0 ){ |
| 212 | - if( nPrev>0 && strncmp(pFile->zName, zPrev, nPrev)==0 ) continue; | |
| 212 | + if( nPrev>0 && strncmp(pFile->zName, zPrev, nPrev)==0 | |
| 213 | + && pFile->zName[nPrev]=='/' ) continue; | |
| 213 | 214 | zPrev = pFile->zName; |
| 214 | 215 | for(nPrev=0; zPrev[nPrev] && zPrev[nPrev]!='/'; nPrev++){} |
| 215 | 216 | z = mprintf("%.*s", nPrev, zPrev); |
| 216 | 217 | filler(buf, z, NULL, 0); |
| 217 | 218 | fossil_free(z); |
| 218 | 219 |
| --- src/fusefs.c | |
| +++ src/fusefs.c | |
| @@ -207,11 +207,12 @@ | |
| 207 | filler(buf, ".", NULL, 0); |
| 208 | filler(buf, "..", NULL, 0); |
| 209 | manifest_file_rewind(fusefs.pMan); |
| 210 | if( n==2 ){ |
| 211 | while( (pFile = manifest_file_next(fusefs.pMan, 0))!=0 ){ |
| 212 | if( nPrev>0 && strncmp(pFile->zName, zPrev, nPrev)==0 ) continue; |
| 213 | zPrev = pFile->zName; |
| 214 | for(nPrev=0; zPrev[nPrev] && zPrev[nPrev]!='/'; nPrev++){} |
| 215 | z = mprintf("%.*s", nPrev, zPrev); |
| 216 | filler(buf, z, NULL, 0); |
| 217 | fossil_free(z); |
| 218 |
| --- src/fusefs.c | |
| +++ src/fusefs.c | |
| @@ -207,11 +207,12 @@ | |
| 207 | filler(buf, ".", NULL, 0); |
| 208 | filler(buf, "..", NULL, 0); |
| 209 | manifest_file_rewind(fusefs.pMan); |
| 210 | if( n==2 ){ |
| 211 | while( (pFile = manifest_file_next(fusefs.pMan, 0))!=0 ){ |
| 212 | if( nPrev>0 && strncmp(pFile->zName, zPrev, nPrev)==0 |
| 213 | && pFile->zName[nPrev]=='/' ) continue; |
| 214 | zPrev = pFile->zName; |
| 215 | for(nPrev=0; zPrev[nPrev] && zPrev[nPrev]!='/'; nPrev++){} |
| 216 | z = mprintf("%.*s", nPrev, zPrev); |
| 217 | filler(buf, z, NULL, 0); |
| 218 | fossil_free(z); |
| 219 |