فهرست منبع

ObjectLoader: Added try/catch. See #9909.

Mr.doob 8 سال پیش
والد
کامیت
a6cb0b6540
1فایلهای تغییر یافته به همراه13 افزوده شده و 1 حذف شده
  1. 13 1
      src/loaders/ObjectLoader.js

+ 13 - 1
src/loaders/ObjectLoader.js

@@ -56,7 +56,19 @@ Object.assign( ObjectLoader.prototype, {
 		var loader = new XHRLoader( scope.manager );
 		var loader = new XHRLoader( scope.manager );
 		loader.load( url, function ( text ) {
 		loader.load( url, function ( text ) {
 
 
-			var json = JSON.parse( text );
+			var json = null;
+
+			try {
+
+				json = JSON.parse( text );
+
+			} catch ( error ) {
+
+				console.error( 'THREE:ObjectLoader: Can\'t parse ' + url + '.', error.message );
+				return;
+
+			}
+
 			var metadata = json.metadata;
 			var metadata = json.metadata;
 
 
 			if ( metadata === undefined || metadata.type === undefined || metadata.type.toLowerCase() === 'geometry' ) {
 			if ( metadata === undefined || metadata.type === undefined || metadata.type.toLowerCase() === 'geometry' ) {