From b482321213e6e896d0981c266bed12f4e1f67441 Mon Sep 17 00:00:00 2001 From: David Baker Date: Fri, 4 Oct 2019 11:43:40 +0100 Subject: Pass in a buffer to olm_session_describe instead of having a static one, as that could end up taking up a lot of memory if your app keeps olm sessions hanging about. --- javascript/olm_post.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'javascript') diff --git a/javascript/olm_post.js b/javascript/olm_post.js index c0498db..e204f30 100644 --- a/javascript/olm_post.js +++ b/javascript/olm_post.js @@ -460,10 +460,16 @@ Session.prototype['decrypt'] = restore_stack(function( }); Session.prototype['describe'] = restore_stack(function() { - var description_buf = session_method(Module['_olm_session_describe'])( - this.ptr - ); - return UTF8ToString(description_buf); + var description_buf; + try { + description_buf = malloc(256); + session_method(Module['_olm_session_describe'])( + this.ptr, description_buf, 256 + ); + return UTF8ToString(description_buf); + } finally { + if (description_buf !== undefined) free(description_buf); + } }); function Utility() { -- cgit v1.2.3