diff --git a/include/class.thread.php b/include/class.thread.php
index f8455faf51dd6a402f9ab2e1442f13d0f7ec6088..8bb321eedea75d38d3a855e0de3d520df471d480 100644
--- a/include/class.thread.php
+++ b/include/class.thread.php
@@ -2294,8 +2294,9 @@ class EditEvent extends ThreadEvent {
                 $fields[$F->id] = $F;
             }
             foreach ($data['fields'] as $id=>$f) {
-                $field = $fields[$id];
-                if ($mode == self::MODE_CLIENT && !$field->isVisibleToUsers())
+                if (!($field = $fields[$id]))
+                   continue;
+                if ($mode == self::MODE_CLIENT &&  !$field->isVisibleToUsers())
                     continue;
                 list($old, $new) = $f;
                 $impl = $field->getImpl($field);
diff --git a/scp/css/scp.css b/scp/css/scp.css
index 1c0456a84869f52abca7256f076c728a1586e436..54ae700c322d68da3a5648b8bf9178b794ae1fc3 100644
--- a/scp/css/scp.css
+++ b/scp/css/scp.css
@@ -3639,4 +3639,5 @@ img.avatar + img.avatar {
 /* Fixes Select2 placeholder bug where
  * placeholder is cutoff.
  */
+.select2-selection__rendered, .select2-search,
 .select2-search__field:not([placeholder='']){width: 100% !important;}
diff --git a/scp/js/scp.js b/scp/js/scp.js
index 40e8e06330411e513f78e16ddeabdf5e440d8ac3..7a6eefb0bec5bdd5baf3b486b11314f47f555ffb 100644
--- a/scp/js/scp.js
+++ b/scp/js/scp.js
@@ -195,7 +195,7 @@ var scp_prep = function() {
 
     $('form select#cannedResp').select2({width: '300px'});
     $('form select#cannedResp').on('select2:opening', function (e) {
-        var redactor = $('.richtext', e.target.closest('form')).data('redactor');
+        var redactor = $('.richtext', $(this).closest('form')).data('redactor');
         if (redactor)
             redactor.selection.save();
     });