Jelajahi Sumber

Loaders: Use unique cache keys per loader. (#31315)

* Loaders: Use unique cache keys per loader.

* E2E: Exclude unstable examples.
Michael Herzog 11 bulan lalu
induk
melakukan
cdd6c5ba4f

+ 2 - 2
src/loaders/FileLoader.js

@@ -74,7 +74,7 @@ class FileLoader extends Loader {
 
 		url = this.manager.resolveURL( url );
 
-		const cached = Cache.get( url );
+		const cached = Cache.get( `file:${url}` );
 
 		if ( cached !== undefined ) {
 
@@ -263,7 +263,7 @@ class FileLoader extends Loader {
 
 				// Add to cache only on HTTP success, so that we do not cache
 				// error response bodies as proper responses to requests.
-				Cache.add( url, data );
+				Cache.add( `file:${url}`, data );
 
 				const callbacks = loading[ url ];
 				delete loading[ url ];

+ 4 - 4
src/loaders/ImageBitmapLoader.js

@@ -102,7 +102,7 @@ class ImageBitmapLoader extends Loader {
 
 		const scope = this;
 
-		const cached = Cache.get( url );
+		const cached = Cache.get( `imageBitmap:${url}` );
 
 		if ( cached !== undefined ) {
 
@@ -165,7 +165,7 @@ class ImageBitmapLoader extends Loader {
 
 		} ).then( function ( imageBitmap ) {
 
-			Cache.add( url, imageBitmap );
+			Cache.add( `imageBitmap:${url}`, imageBitmap );
 
 			if ( onLoad ) onLoad( imageBitmap );
 
@@ -179,14 +179,14 @@ class ImageBitmapLoader extends Loader {
 
 			_errorMap.set( promise, e );
 
-			Cache.remove( url );
+			Cache.remove( `imageBitmap:${url}` );
 
 			scope.manager.itemError( url );
 			scope.manager.itemEnd( url );
 
 		} );
 
-		Cache.add( url, promise );
+		Cache.add( `imageBitmap:${url}`, promise );
 		scope.manager.itemStart( url );
 
 	}

+ 3 - 3
src/loaders/ImageLoader.js

@@ -50,7 +50,7 @@ class ImageLoader extends Loader {
 
 		const scope = this;
 
-		const cached = Cache.get( url );
+		const cached = Cache.get( `image:${url}` );
 
 		if ( cached !== undefined ) {
 
@@ -116,7 +116,7 @@ class ImageLoader extends Loader {
 
 			if ( onError ) onError( event );
 
-			Cache.remove( url );
+			Cache.remove( `image:${url}` );
 
 			//
 
@@ -153,7 +153,7 @@ class ImageLoader extends Loader {
 
 		}
 
-		Cache.add( url, image );
+		Cache.add( `image:${url}`, image );
 		scope.manager.itemStart( url );
 
 		image.src = url;

+ 2 - 0
test/e2e/puppeteer.js

@@ -111,6 +111,8 @@ const exceptionList = [
 	'webgpu_multisampled_renderbuffers',
 	'webgl_test_wide_gamut',
 	'webgl_volume_instancing',
+	'webgl_buffergeometry_attributes_integer',
+	'webgl_batch_lod_bvh',
 
 	// Intentional z-fighting in this demo makes it non-deterministic
 	'webgl_reverse_depth_buffer',

粤ICP备19079148号