From d415d4cf11dc8f55adfe5dc51cca2c535f52e859 Mon Sep 17 00:00:00 2001 From: Steve Howell Date: Thu, 11 May 2017 09:28:33 -0700 Subject: [PATCH] Add error handling in watch_manual_resize(). We now explicitly complain if a caller passes in a bad selector to this function and return undefined. --- static/js/message_edit.js | 4 +++- static/js/resize.js | 9 ++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/static/js/message_edit.js b/static/js/message_edit.js index b7ef6237eb..107bbf7855 100644 --- a/static/js/message_edit.js +++ b/static/js/message_edit.js @@ -223,7 +223,9 @@ function edit_message(row, raw_content) { copy_message.remove(); var edit_id = "#message_edit_content_" + rows.id(row); var listeners = resize.watch_manual_resize(edit_id); - currently_editing_messages[rows.id(row)].listeners = listeners; + if (listeners) { + currently_editing_messages[rows.id(row)].listeners = listeners; + } composebox_typeahead.initialize_compose_typeahead(edit_id, {emoji: true, stream: true}); } diff --git a/static/js/resize.js b/static/js/resize.js index 965cd33612..4ce7bb11af 100644 --- a/static/js/resize.js +++ b/static/js/resize.js @@ -167,8 +167,15 @@ function left_userlist_get_new_heights() { exports.watch_manual_resize = function (element) { return (function on_box_resize(cb) { + var box = document.querySelector(element); + + if (!box) { + blueslip.error('Bad selector in watch_manual_resize: ' + element); + return; + } + var meta = { - box: document.querySelector(element), + box: box, height: null, mousedown: false, };