瀏覽代碼

Handle several unhandled errors - this is becoming a mess and we should really use a package to clean this up - closes #113

Jake 10 年之前
父節點
當前提交
e9071b123c
共有 1 個文件被更改,包括 20 次插入11 次删除
  1. 20 11
      lib/skins.js

+ 20 - 11
lib/skins.js

@@ -39,8 +39,10 @@ exp.extract_helm = function(rid, facefile, buffer, outname, callback) {
           callback(open_err);
         } else {
           face_img.toBuffer("png", { compression: "none" }, function(buf_err, face_buffer) {
-            // FIXME: buf_err is not handled
-            skin_img.crop(40, 8, 47, 15, function(crop_err, helm_img) {
+            if (buf_err) {
+              callback(buf_err);
+            } else {
+              skin_img.crop(40, 8, 47, 15, function(crop_err, helm_img) {
               if (crop_err) {
                 callback(crop_err);
               } else {
@@ -53,14 +55,17 @@ exp.extract_helm = function(rid, facefile, buffer, outname, callback) {
                       callback(null);
                     } else {
                       face_helm_img.toBuffer("png", {compression: "none"}, function(buf_err2, face_helm_buffer) {
-                        // FIXME: buf_err2 is not handled
-                        if (face_helm_buffer.toString() !== face_buffer.toString()) {
-                          face_helm_img.writeFile(outname, function(write_err) {
-                            callback(write_err);
-                          });
+                        if (buf_err2) {
+                          callback(buf_err2)
                         } else {
-                          logging.log(rid, "helm img == face img, not storing!");
-                          callback(null);
+                          if (face_helm_buffer.toString() !== face_buffer.toString()) {
+                            face_helm_img.writeFile(outname, function(write_err) {
+                              callback(write_err);
+                            });
+                          } else {
+                            logging.log(rid, "helm img == face img, not storing!");
+                            callback(null);
+                          }
                         }
                       });
                     }
@@ -68,6 +73,7 @@ exp.extract_helm = function(rid, facefile, buffer, outname, callback) {
                 });
               }
             });
+            }
           });
         }
       });
@@ -85,8 +91,11 @@ exp.resize_img = function(inname, size, callback) {
       image.batch()
       .resize(size, size, "nearest-neighbor") // nearest-neighbor doesn't blur
       .toBuffer("png", function(buf_err, buffer) {
-        // FIXME: buf_err is not handled
-        callback(null, buffer);
+        if (buf_err) {
+          callback(buf_err, null);
+        } else {
+          callback(null, buffer);
+        }
       });
     }
   });