anchor.diff:      }
   
       // TODO: check for error !!
  -    Future.wait(futures).then((List list) {
  +    return Future.wait(futures).then((List list) {
         for (String url in textureCache.keys) {
           TextureWrapper textureWrapper = textureCache[url];
           if (textureWrapper.loaded && textureWrapper.type != TEXTURE_CUBE_MAP) continue;
  
positive.code:   TextureWrapper getTW(String url) {
      return textureCache[url];
    }
  
    void loadAllThenExecute(callBackFunc()) {
      List<Future<HTML.Event>> futures = new List<Future<HTML.Event>>();
  
      for (String url in textureCache.keys) {
  
negative.code:   TextureWrapper addCanvas(String url, HTML.CanvasElement canvas) {
      TextureWrapper tw = new TextureWrapper(this.gl, clamp: false);
      tw.loaded = true;
      tw.texture = chronosGL.getUtils().createTextureFromCanvas(canvas, minFilter: minFilter, magFilter: magFilter, mipmap: mipmap, flipY: flipY);
      return textureCache[url] = tw;
    }
  
  