[IMP] make Registry.get_any faster
throwing exceptions seems quite slow in Safari, and generates a significant performance hit in dashboards bzr revid: xmo@openerp.com-20111012131255-2cayqxedjpdtj432
This commit is contained in:
@@ -287,14 +287,12 @@ openerp.web.Registry = openerp.web.Class.extend( /** @lends openerp.web.Registry
|
||||
*/
|
||||
get_any: function (keys) {
|
||||
for (var i=0; i<keys.length; ++i) {
|
||||
try {
|
||||
return this.get_object(keys[i]);
|
||||
} catch (e) {
|
||||
if (e instanceof openerp.web.KeyNotFound) {
|
||||
continue;
|
||||
}
|
||||
throw e;
|
||||
var key = keys[i];
|
||||
if (key === undefined || !(key in this.map)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
return this.get_object(key);
|
||||
}
|
||||
throw new openerp.web.KeyNotFound(keys.join(','));
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user