From d8d4d209d78749a3929636cb333a532ad44b6cd6 Mon Sep 17 00:00:00 2001 From: admin Date: Wed, 27 Oct 2021 14:48:09 -0700 Subject: [PATCH 1/3] add a simplified version of rootScope listener check --- ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt | 2 +- ...check_f0e1a8581b27705088d943fddc4bcbc3.xml | 51 +++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml diff --git a/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt b/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt index 3f46f0c..feb1a15 100644 --- a/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt +++ b/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt @@ -1 +1 @@ -0x5JTGsuVftI6THFgd6j9kal0k6pwsnj87lodT9JdStqAayDcXdIdBk8dUx8rlf8_56U6lhRuZjOjMzr-8Bxhx9agM0G74E146s0Xejsu0kRSCW-gRwWm81jRtlvIeSfUAOc7KKbN8Yze_spJZd3xQ7KeA_eJT7XC35nPp2l3BtTSxbOJWAA3z__5StnoxHXag6QPhjIe9qvb872kl2ZksWp7PA0PUZ6S_VgFCRnzJVUy8EcuvDJLGzIZMtLhCQfftaWobqh96jpDGemEQtqxuefYrpgt8egIACDL3dgWSzd-MGaqx3ptqP9uyyAN_OWDu6sNpAJbjgxkvEx0vMMDIX6b9421p-LpoJDITTlI3yEsmXvAu7bOPvhbprXqOYC0w7BQ230UYBANBqgY15k6pttWnH6PyQU-mifsXPLg6OglVplGf884Y1Ak93-BANTOPNI1HwuQQIB_SWPyvL-_NLzMd7bNb9i-UtrjH4x4nZ1-DPVO6-iXSVm0IHdzHPxuM70OjDBZJN_v2tKekmwEGTgoD9bDIVnoODydrwjAsqZ1LxSNCKqkWN2VII0IEsSVrLAwzBl0SKWcQ4xo8pT2sssdxXOCd_eiXLVlYkSudrcK6DcmxugaXUajKumJkNt3rapqLTNsxXZ9jUHoRaVnUO5iGWi3ofqtw-ALdKOgS4 +LKUZb9XLSpVcpPWzXt3ZIvr4MWmnxsIePLAKberBtWGguLaFL4qtr7RPAWt9sWcekIDhQ2pgF1Alj0WswnPVBEji2nkVdb94z1XKYZBP_pd4zzTINxe66BG7upDtwDlXAHKI5sZmDSP0vmtNLaTSy5mOSIArpR2FCEI-d6GFW90b8FunxEyJyucrJ-R-fruSpdZiPj1cg2Rq69mnKcAM4p1XnzZa7G5_wj8AlCychATEvLiLgY96fuatUtwIO3N0dJeTLseCPY3W0RhDQOWzfms7LwfKPkhSt8cC6i-cSbMx4rmSn83VjzVshghqHGuDRB43_oPytw52yOCmY6knyuFjT2JC3aymuUq9sypVB-0-kxGg2-lWh-GEkdGG_2B04ugYMzH8fLzeUHm0tRqRTXTV8MRLb0CezAnzEysZNxQMSicEqHBcJ6Bs4uz7r-SsTm59YsVTk2-TTseUKYEUzTI4EfdwygwSremfVO8xhJfljGRXZNwcOlkBMDlA999Kp65IOQD6Fhyx9K9IvNe2LMkXGTu3cYMuMYRUSRvbWTRs5S-_JPSAMpS3W5WBhSy7BKr1oyMnIS3zfS3DDh_76DBfsSem67pJ21Gs8lUMKY-tkg2Y0_2i7DypI-_9K5FPkMhOEih-i5zQtipLYpMHMhv-TmSvAZqMjKCtLlAe34I \ No newline at end of file diff --git a/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml b/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml new file mode 100644 index 0000000..8ff0226 --- /dev/null +++ b/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml @@ -0,0 +1,51 @@ + + + true + false + performance + client_scriptLIKE$rootScope.$on^client_scriptNOT LIKE$scope.$on('destroy'^ORclient_scriptNOT LIKE$scope.$on("destroy"^EQ + + + + + $rootScope.$on listeners will remain in memory if you navigate to another controller. This will create a memory leak if the controller falls out of scope. + + scan_finding + $rootScope.$on listener + 1 + api.controller = function ($rootScope, $scope) { + /* widget controller */ + var c = this; + + var deregister = $rootScope.$on("someevent", function () {}); + + $scope.$on("$destroy", function destroyScope() { + deregister(); + }); +}; + + 100 + 0 + 1 + + Always deregister $rootScope.$on listeners on the scope $destory event + scan_table_check + admin + 2021-10-27 20:20:15 + f0e1a8581b27705088d943fddc4bcbc3 + 7 + $rootScope.$on listener + ca8467c41b9abc10ce0f62c3b24bcbaa + + ca8467c41b9abc10ce0f62c3b24bcbaa + scan_table_check_f0e1a8581b27705088d943fddc4bcbc3 + admin + 2021-10-27 21:40:28 + sp_widget
+ false +
+
From e14d335ad6dd2cade97d58bd6a0413587c575a32 Mon Sep 17 00:00:00 2001 From: hrobarikt Date: Wed, 27 Oct 2021 23:53:25 +0200 Subject: [PATCH 2/3] Update README.md --- README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/README.md b/README.md index 6738a63..c3bac38 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,21 @@ Using getRowCount method of GlideRecord can cause performance issues while queri ### Query business rules should not use query() on GlideRecord Query business rules that query themselves will continue to loop indefinitely until being caught by the platforms recursion limit. This can build up to an excessive response time and possibly cause the transaction to time out or create performance issues. +### Always deregister $rootScope.$on listeners on the scope $destory event +$rootScope.$on listeners will remain in memory if not properly cleaned up. This will create a memory leak if the controller falls out of scope. +```javascript +api.controller = function ($rootScope, $scope) { + /* widget controller */ + var c = this; + + var deregister = $rootScope.$on("someevent", function () {}); + + $scope.$on("$destroy", function destroyScope() { + deregister(); + }); +}; +``` + ## Category: Security ### Tables without ACLs From e186b31445415c0fd0ad8530223cc205d507be00 Mon Sep 17 00:00:00 2001 From: admin Date: Wed, 27 Oct 2021 14:57:50 -0700 Subject: [PATCH 3/3] update description --- ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt | 2 +- .../scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt b/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt index feb1a15..9dc6761 100644 --- a/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt +++ b/ca8467c41b9abc10ce0f62c3b24bcbaa/checksum.txt @@ -1 +1 @@ -LKUZb9XLSpVcpPWzXt3ZIvr4MWmnxsIePLAKberBtWGguLaFL4qtr7RPAWt9sWcekIDhQ2pgF1Alj0WswnPVBEji2nkVdb94z1XKYZBP_pd4zzTINxe66BG7upDtwDlXAHKI5sZmDSP0vmtNLaTSy5mOSIArpR2FCEI-d6GFW90b8FunxEyJyucrJ-R-fruSpdZiPj1cg2Rq69mnKcAM4p1XnzZa7G5_wj8AlCychATEvLiLgY96fuatUtwIO3N0dJeTLseCPY3W0RhDQOWzfms7LwfKPkhSt8cC6i-cSbMx4rmSn83VjzVshghqHGuDRB43_oPytw52yOCmY6knyuFjT2JC3aymuUq9sypVB-0-kxGg2-lWh-GEkdGG_2B04ugYMzH8fLzeUHm0tRqRTXTV8MRLb0CezAnzEysZNxQMSicEqHBcJ6Bs4uz7r-SsTm59YsVTk2-TTseUKYEUzTI4EfdwygwSremfVO8xhJfljGRXZNwcOlkBMDlA999Kp65IOQD6Fhyx9K9IvNe2LMkXGTu3cYMuMYRUSRvbWTRs5S-_JPSAMpS3W5WBhSy7BKr1oyMnIS3zfS3DDh_76DBfsSem67pJ21Gs8lUMKY-tkg2Y0_2i7DypI-_9K5FPkMhOEih-i5zQtipLYpMHMhv-TmSvAZqMjKCtLlAe34I \ No newline at end of file +yRAdTrGPYVvbipt43BmROzovwtdi4W98Y5fFAze6fNNug4Cx3bErlpOqhYtVhTgKZ8AGOWD_laPP6Y_z3BkW3nZC5nPMERnWyLZxn9aFu28NzucCBgvKjh9uJjESImB96SIj57wK8nWFNMgaL2ZvJgvHdNbChkkntSmBsV_r7s1cALvOeZPpBAEGYJiZ7mOPr7_pz4-YwFlfsfUyO4jEDhRW283uhIAJPvOHdwM6TlHuwhTnp4O6kUYbZVZV8ee-6-0NWY_9nG1nFbOPN9AJ-itOsP-9Gd1YoyOqjm9fpMgUUk3zt4YPsK6-_6VBFPOC1itrqn0SeKaHzVEDPej2gYFCpYgGbVHdhWEDbxt8I_3Ed3IDg48Pad2lqDk69V4gz4ZLvhLmDUjA0Q7jQt0B3cVzZCQGK4M8BMHIt3D9LVb2D3XsNwaX-kNFu5Zzo3spUJgK9KfPo8s2erHd1-nq_ICJkL836gARdWMNefu3TZoAcRR9-PPzZzaH16HvuFAtzSjqVC_NtMrsWBOe0xlhl_gyTdjgu8MAPWDAsnGtpeAEmfxOEBqB4-R8S_vl4K1WEU5MU-SgK2mvFn136KvWp-43Tr3Qmn3DpYsz9NFNw5RD04cTWCQo_sip4sgK9etOqlceQTE5S2ZV5zQxJDVFQMNvv7Bl1HyEf8u_nSolCwQ \ No newline at end of file diff --git a/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml b/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml index 8ff0226..691409d 100644 --- a/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml +++ b/ca8467c41b9abc10ce0f62c3b24bcbaa/update/scan_table_check_f0e1a8581b27705088d943fddc4bcbc3.xml @@ -8,7 +8,7 @@ - $rootScope.$on listeners will remain in memory if you navigate to another controller. This will create a memory leak if the controller falls out of scope. + $rootScope.$on listeners will remain in memory if not properly cleaned up. This will create a memory leak if the controller falls out of scope. scan_finding $rootScope.$on listener @@ -37,14 +37,14 @@ admin 2021-10-27 20:20:15 f0e1a8581b27705088d943fddc4bcbc3 - 7 + 8 $rootScope.$on listener ca8467c41b9abc10ce0f62c3b24bcbaa ca8467c41b9abc10ce0f62c3b24bcbaa scan_table_check_f0e1a8581b27705088d943fddc4bcbc3 admin - 2021-10-27 21:40:28 + 2021-10-27 21:53:56 sp_widget
false