aboutsummaryrefslogtreecommitdiffstats
path: root/build/server.js
diff options
context:
space:
mode:
Diffstat (limited to 'build/server.js')
-rw-r--r--build/server.js31
1 files changed, 25 insertions, 6 deletions
diff --git a/build/server.js b/build/server.js
index e9d6d3c..af245ac 100644
--- a/build/server.js
+++ b/build/server.js
@@ -4334,6 +4334,8 @@ server_HttpServer.prototype = {
if(js_node_Fs.existsSync(path)) {
filePath = path;
}
+ var ext1 = haxe_io_Path.extension(filePath).toLowerCase();
+ res.setHeader("content-type",this.getMimeType(ext1));
}
if(this.isMediaExtension(ext)) {
if(this.serveMedia(req,res,filePath)) {
@@ -4353,7 +4355,16 @@ server_HttpServer.prototype = {
}
,uploadFileLastChunk: function(req,res) {
var _gthis = this;
- var name = this.cache.getFreeFileName(req.headers["content-name"]);
+ var fileName;
+ try {
+ fileName = decodeURIComponent(req.headers["content-name"]);
+ } catch( _g ) {
+ fileName = "";
+ }
+ if(StringTools.trim(fileName).length == 0) {
+ fileName = null;
+ }
+ var name = this.cache.getFreeFileName(fileName);
var filePath = this.cache.getFilePath(name);
var body = [];
req.on("data",function(chunk) {
@@ -4369,7 +4380,16 @@ server_HttpServer.prototype = {
}
,uploadFile: function(req,res) {
var _gthis = this;
- var name = this.cache.getFreeFileName(req.headers["content-name"]);
+ var fileName;
+ try {
+ fileName = decodeURIComponent(req.headers["content-name"]);
+ } catch( _g ) {
+ fileName = "";
+ }
+ if(StringTools.trim(fileName).length == 0) {
+ fileName = null;
+ }
+ var name = this.cache.getFreeFileName(fileName);
var filePath = this.cache.getFilePath(name);
var tmp = Std.parseInt(req.headers["content-length"]);
if(tmp == null) {
@@ -4415,7 +4435,7 @@ server_HttpServer.prototype = {
}
});
stream.on("error",function(err) {
- haxe_Log.trace(err,{ fileName : "src/server/HttpServer.hx", lineNumber : 196, className : "server.HttpServer", methodName : "uploadFile"});
+ haxe_Log.trace(err,{ fileName : "src/server/HttpServer.hx", lineNumber : 201, className : "server.HttpServer", methodName : "uploadFile"});
res.statusCode = 500;
res.end(JSON.stringify({ info : "File write stream error."}));
var _this = _gthis.uploadingFilesSizes;
@@ -4429,7 +4449,7 @@ server_HttpServer.prototype = {
_gthis.cache.remove(name);
});
req.on("error",function(err) {
- haxe_Log.trace("Request Error:",{ fileName : "src/server/HttpServer.hx", lineNumber : 203, className : "server.HttpServer", methodName : "uploadFile", customParams : [err]});
+ haxe_Log.trace("Request Error:",{ fileName : "src/server/HttpServer.hx", lineNumber : 208, className : "server.HttpServer", methodName : "uploadFile", customParams : [err]});
stream.destroy();
res.statusCode = 500;
res.end(JSON.stringify({ info : "File request error."}));
@@ -4445,8 +4465,7 @@ server_HttpServer.prototype = {
});
}
,getPath: function(dir,url) {
- var filePath = dir + url.pathname;
- filePath = decodeURIComponent(filePath.split("+").join(" "));
+ var filePath = decodeURIComponent(dir.split("+").join(" ")) + decodeURIComponent(url.pathname);
if(!sys_FileSystem.isDirectory(filePath)) {
return filePath;
}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage