aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugeniy E. Mikhailov <evgmik@gmail.com>2021-01-23 12:18:08 -0500
committerEugeniy E. Mikhailov <evgmik@gmail.com>2021-01-23 12:18:08 -0500
commitdc008e9096b97befaeba9eb684dbcd8d872c2a38 (patch)
tree9fe9076351b732120b9f3421d369f23cf7e213fc
parent1eeb202272fd2411123b980aa782f457c6835d76 (diff)
parent283e57119d86f442bc6184ae26303b9cd1b9e0e8 (diff)
downloadpatchfoo-dc008e9096b97befaeba9eb684dbcd8d872c2a38.tar.gz
patchfoo-dc008e9096b97befaeba9eb684dbcd8d872c2a38.zip
Merge branch 'main' into evmik-logbook-next
-rw-r--r--lib/render-msg.js1
-rw-r--r--lib/render.js1
-rw-r--r--lib/serve.js9
3 files changed, 10 insertions, 1 deletions
diff --git a/lib/render-msg.js b/lib/render-msg.js
index 3957694..e5846ac 100644
--- a/lib/render-msg.js
+++ b/lib/render-msg.js
@@ -479,6 +479,7 @@ RenderMsg.prototype.post = function (cb) {
self.c.tags ? h('div', h('small', 'tags: ', u.toArray(self.c.tags).map(function (tag, i) {
return [i > 0 ? ', ' : '', h('code', tag)]
}))) : '',
+ self.c.title ? h('h4', u.toString(self.c.title)) : '',
h('div.ssb-post-text', {innerHTML: self.markdown()})
), cb)
})
diff --git a/lib/render.js b/lib/render.js
index 3b0e9ac..0bcb78a 100644
--- a/lib/render.js
+++ b/lib/render.js
@@ -41,6 +41,7 @@ MdRenderer.prototype.urltransform = function (href) {
MdRenderer.prototype.image = function (ref, title, text) {
if (ref[0] !== '&') return this.link(ref, title, text)
var alt = this.render.getImageAlt(ref, text)
+ if (alt.length > 60) alt = alt.substr(0, 60) + '…'
return (/^video:/.test(text) ? h('video', {
controls: 'controls',
src: this.render.toUrl(ref),
diff --git a/lib/serve.js b/lib/serve.js
index 7237a88..b61505b 100644
--- a/lib/serve.js
+++ b/lib/serve.js
@@ -2131,6 +2131,13 @@ Serve.prototype.blob = function (id, path) {
if (/^invalid/.test(err.message)) return self.respond(400, err.message)
else return self.respond(500, err.message || err)
}
+ if (key) {
+ // Transform size of boxed blob to size of cleartext.
+ // Assume that the blob contains box-stream packets that are all full 4096-byte packets except maybe the last one, plus one goodbye packet
+ // boxedlen = origlen + ceil(origlen / 4096)*34 + 34
+ const numBoxHeaders = Math.ceil((size - 34) / 4130) + 1
+ size -= numBoxHeaders * 34
+ }
self.res.setHeader('Accept-Ranges', 'bytes')
var range = self.req.headers.range
if (range) {
@@ -2150,7 +2157,7 @@ Serve.prototype.blob = function (id, path) {
start = Number(start)
last = Number(last)
}
- if (start > size || last >= size) return res.writeHead(416, 'Range not satisfiable')
+ if (start > size || last >= size) return self.respond(416, 'Range not satisfiable')
var end = last + 1
var length = end - start
var wroteHeaders = false