From 2063f88c82d85aea23998bdf776683869396fdf1 Mon Sep 17 00:00:00 2001
From: Edward Rudd <urkle@outoforder.cc>
Date: Tue, 14 Oct 2014 16:55:05 +0000
Subject: [PATCH] handle exceptions inside the humble_fetch_asset_data
---
client/library/library_humble.js | 24 ++++++++++++++----------
1 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/client/library/library_humble.js b/client/library/library_humble.js
index 0cabd07..de578d9 100644
--- a/client/library/library_humble.js
+++ b/client/library/library_humble.js
@@ -199,17 +199,21 @@
Runtime.dynCall('viii', onload, [arg, buffer, byteArray.length]);
_free(buffer);
}, function(err) {
- var url = HUMBLE_API.locateAsset(path);
- Browser.asyncLoad(url, function(byteArray) {
- HUMBLE_API.storeToCache(cacheKey, byteArray, function(err) {
- var buffer = _malloc(byteArray.length);
- HEAPU8.set(byteArray, buffer);
- Runtime.dynCall('viii', onload, [arg, buffer, byteArray.length]);
- _free(buffer);
- });
- }, function() {
+ try {
+ var url = HUMBLE_API.locateAsset(path);
+ Browser.asyncLoad(url, function (byteArray) {
+ HUMBLE_API.storeToCache(cacheKey, byteArray, function (err) {
+ var buffer = _malloc(byteArray.length);
+ HEAPU8.set(byteArray, buffer);
+ Runtime.dynCall('viii', onload, [arg, buffer, byteArray.length]);
+ _free(buffer);
+ });
+ }, function() {
+ if (onerror) Runtime.dynCall('vi', onerror, [arg]);
+ }, true /* NO run dependency */);
+ } catch(ex) {
if (onerror) Runtime.dynCall('vi', onerror, [arg]);
- }, true /* NO run dependency */);
+ }
});
},
humble_get_player_size: function(w, h) {
--
Gitblit v1.9.3