luci-base: luci.js: properly handle nested Class.super() calls
authorJo-Philipp Wich <jo@mein.io>
Tue, 26 Nov 2019 08:37:27 +0000 (09:37 +0100)
committerJo-Philipp Wich <jo@mein.io>
Tue, 26 Nov 2019 08:37:27 +0000 (09:37 +0100)
commit374c23cdab53c5681acafb561977d927c361408a
treec1c45db0eff9572df48c49aa28c8b4929b7399b4
parent666ad2df14ac61fafcc9fa630787f7049cc86e8e
luci-base: luci.js: properly handle nested Class.super() calls

Introduce a unique __id__ attribute per class and use that, together with
the symbol name being looked up to, to form a unique key which is used to
store the prototype scope pointer.

This fixes cases where a call to super() invokes a procedure which is
calling super() as well on a different class or symbol.

Fixes: #3316
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
modules/luci-base/htdocs/luci-static/resources/luci.js