mirror of
https://github.com/bjc/prosody.git
synced 2025-04-01 20:27:39 +03:00
Merge 13.0->trunk
This commit is contained in:
commit
d3899c1e16
2 changed files with 12 additions and 12 deletions
|
@ -429,18 +429,22 @@ function handle_download(event, path) -- GET /uploads/:slot+filename
|
|||
local request_range = request.headers.range;
|
||||
local response_range;
|
||||
if request_range then
|
||||
local last_byte = string.format("%d", tonumber(filesize) - 1);
|
||||
local range_start, range_end = request_range:match("^bytes=(%d+)%-(%d*)$")
|
||||
-- Only support resumption, ie ranges from somewhere in the middle until the end of the file.
|
||||
if (range_start and range_start ~= "0") and (range_end == "" or range_end == filesize) then
|
||||
if (range_start and range_start ~= "0") and (range_end == "" or range_end == last_byte) then
|
||||
local pos, size = tonumber(range_start), tonumber(filesize);
|
||||
local new_pos = pos < size and handle:seek("set", pos);
|
||||
if new_pos and new_pos < size then
|
||||
response_range = "bytes "..range_start.."-"..filesize.."/"..filesize;
|
||||
response_range = "bytes "..range_start.."-"..last_byte.."/"..filesize;
|
||||
filesize = string.format("%d", size-pos);
|
||||
else
|
||||
handle:close();
|
||||
return 416;
|
||||
end
|
||||
else
|
||||
handle:close();
|
||||
return 416;
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -885,16 +885,12 @@ local function upgrade_table(engine, params, apply_changes) -- luacheck: ignore
|
|||
end
|
||||
end)
|
||||
if indices["prosody_index"] then
|
||||
if apply_changes then
|
||||
local success = engine:transaction(function ()
|
||||
return assert(engine:execute([[DROP INDEX "prosody_index";]]));
|
||||
end);
|
||||
if not success then
|
||||
module:log("error", "Failed to delete obsolete index \"prosody_index\"");
|
||||
return false;
|
||||
end
|
||||
else
|
||||
changes = true;
|
||||
local success = engine:transaction(function ()
|
||||
return assert(engine:execute([[DROP INDEX "prosody_index";]]));
|
||||
end);
|
||||
if not success then
|
||||
module:log("error", "Failed to delete obsolete index \"prosody_index\"");
|
||||
return false;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue