]> git.proxmox.com Git - ceph.git/blame - ceph/src/civetweb/src/third_party/duktape-1.8.0/src-separate/duk_hbufferobject_misc.c
buildsys: switch source download to quincy
[ceph.git] / ceph / src / civetweb / src / third_party / duktape-1.8.0 / src-separate / duk_hbufferobject_misc.c
CommitLineData
7c673cae
FG
1#include "duk_internal.h"
2
3#if defined(DUK_USE_BUFFEROBJECT_SUPPORT)
4DUK_INTERNAL duk_uint_t duk_hbufferobject_clamp_bytelength(duk_hbufferobject *h_bufobj, duk_uint_t len) {
5 duk_uint_t buf_size;
6 duk_uint_t buf_avail;
7
8 DUK_ASSERT(h_bufobj != NULL);
9 DUK_ASSERT(h_bufobj->buf != NULL);
10
11 buf_size = (duk_uint_t) DUK_HBUFFER_GET_SIZE(h_bufobj->buf);
12 if (h_bufobj->offset > buf_size) {
13 /* Slice starting point is beyond current length. */
14 return 0;
15 }
16 buf_avail = buf_size - h_bufobj->offset;
17
18 return buf_avail >= len ? len : buf_avail;
19}
20#endif /* DUK_USE_BUFFEROBJECT_SUPPORT */