fix errors for null skins, closes #20

This commit is contained in:
jomo 2014-11-30 03:34:37 +01:00
parent a31282e244
commit 7d47028ff7
4 changed files with 12 additions and 6 deletions

View File

@ -124,7 +124,7 @@ exp.get_image_hash = function(uuid, callback) {
};
// handles requests for +uuid+ images with +size+
// handles requests for +uuid+ avatars with +size+
// callback contains error, status, image buffer, hash
// image is the user's face+helm when helm is true, or the face otherwise
// for status, see get_image_hash
@ -154,20 +154,23 @@ exp.get_avatar = function(uuid, helm, size, callback) {
});
};
// handles requests for +uuid+ skins
// callback contains error, hash, image buffer
exp.get_skin = function(uuid, callback) {
logging.log("\nskin request: " + uuid);
logging.log(uuid + " skin request");
exp.get_image_hash(uuid, function(err, status, hash) {
if (hash) {
var skinurl = "http://textures.minecraft.net/texture/" + hash;
networking.get_skin(skinurl, function(err, img) {
if (err) {
logging.log("\nerror while downloading skin");
logging.error("error while downloading skin");
callback(err, hash, null);
} else {
logging.log("\nreturning skin");
callback(null, hash, img);
}
});
} else {
callback(err, null, null);
}
});
};

BIN
public/images/alex_skin.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -4,6 +4,7 @@ var helpers = require("../modules/helpers");
var config = require("../modules/config");
var router = require("express").Router();
var skins = require("../modules/skins");
var lwip = require("lwip");
/* GET skin request. */
router.get("/:uuid.:ext?", function(req, res) {
@ -61,8 +62,10 @@ router.get("/:uuid.:ext?", function(req, res) {
res.end();
} else {
def = def || skins.default_skin(uuid);
skins.resize_img("public/images/" + def + ".png", size, function(err, image) {
sendimage(http_status, image);
lwip.open("public/images/" + def + "_skin.png", function(err, image) {
image.toBuffer("png", function(err, buffer) {
sendimage(http_status, buffer);
});
});
}
}