@@ -246,7 +246,7 @@ pub fn split_zip(p_bytes: &[u8]) -> (&[u8], Option<&[u8]>) {
246
246
247
247
pub fn split_virtual ( p_bytes : & [ u8 ] ) -> std:: io:: Result < ( usize , Option < ( usize , usize ) > ) > {
248
248
lazy_static ! {
249
- static ref VIRTUAL_RE : Regex = Regex :: new( "(?:^|/)((?:\\ $\\ $virtual|__virtual__)/[a-f0-9]+/([0-9]+)/)" ) . unwrap( ) ;
249
+ static ref VIRTUAL_RE : Regex = Regex :: new( "(?:^|/)((?:\\ $\\ $virtual|__virtual__)/(?:[^/]+)- [a-f0-9]+/([0-9]+)/)" ) . unwrap( ) ;
250
250
}
251
251
252
252
if let Some ( m) = VIRTUAL_RE . captures ( p_bytes) {
@@ -381,24 +381,24 @@ mod tests {
381
381
}],
382
382
["/a/b/c/foo.zip", null],
383
383
["./a/b/c/foo.zip", null],
384
- ["./a/b/__virtual__/abcdef/0/c/d", {
384
+ ["./a/b/__virtual__/foo- abcdef/0/c/d", {
385
385
"basePath": "a/b",
386
- "virtualSegments": ["__virtual__/abcdef/0/c/d", "c/d"],
386
+ "virtualSegments": ["__virtual__/foo- abcdef/0/c/d", "c/d"],
387
387
"zipPath": null
388
388
}],
389
- ["./a/b/__virtual__/abcdef/1/c/d", {
389
+ ["./a/b/__virtual__/foo- abcdef/1/c/d", {
390
390
"basePath": "a",
391
- "virtualSegments": ["b/__virtual__/abcdef/1/c/d", "c/d"],
391
+ "virtualSegments": ["b/__virtual__/foo- abcdef/1/c/d", "c/d"],
392
392
"zipPath": null
393
393
}],
394
- ["./a/b/__virtual__/abcdef/0/c/foo.zip/bar", {
394
+ ["./a/b/__virtual__/foo- abcdef/0/c/foo.zip/bar", {
395
395
"basePath": "a/b",
396
- "virtualSegments": ["__virtual__/abcdef/0/c/foo.zip", "c/foo.zip"],
396
+ "virtualSegments": ["__virtual__/foo- abcdef/0/c/foo.zip", "c/foo.zip"],
397
397
"zipPath": "bar"
398
398
}],
399
- ["./a/b/__virtual__/abcdef/1/c/foo.zip/bar", {
399
+ ["./a/b/__virtual__/foo- abcdef/1/c/foo.zip/bar", {
400
400
"basePath": "a",
401
- "virtualSegments": ["b/__virtual__/abcdef/1/c/foo.zip", "c/foo.zip"],
401
+ "virtualSegments": ["b/__virtual__/foo- abcdef/1/c/foo.zip", "c/foo.zip"],
402
402
"zipPath": "bar"
403
403
}],
404
404
["./a/b/c/.zip", null],
0 commit comments