@@ -122,25 +122,35 @@ where
122122 }
123123
124124 fn visit_member_expression ( & mut self , it : & MemberExpression < ' data > ) {
125- // TODO
126- // you could break this with ["postMessage"] etc
127- // however this code only exists because of recaptcha whatever
128- // and it would slow down js execution a lot
129- if let MemberExpression :: StaticMemberExpression ( s) = it {
130- if s. property . name == "postMessage" {
131- self . jschanges . add ( rewrite ! ( s. property. span, SetRealmFn ) ) ;
132-
133- walk:: walk_expression ( self , & s. object ) ;
134- return ; // unwise to walk the rest of the tree
135- }
125+ match & it {
126+ MemberExpression :: StaticMemberExpression ( s) =>{
127+ // TODO
128+ // you could break this with ["postMessage"] etc
129+ // however this code only exists because of recaptcha whatever
130+ // and it would slow down js execution a lot
131+ if s. property . name == "postMessage" {
132+ self . jschanges . add ( rewrite ! ( s. property. span, SetRealmFn ) ) ;
133+
134+ walk:: walk_expression ( self , & s. object ) ;
135+ return ; // unwise to walk the rest of the tree
136+ }
136137
137- if UNSAFE_GLOBALS . contains ( & s. property . name . as_str ( ) ) {
138- self . jschanges . add ( rewrite ! ( it. span( ) , WrapGet {
139- ident: s. property. name,
140- propspan: Span :: new( s. property. span. start-1 , s. property. span. end) ,
138+ if UNSAFE_GLOBALS . contains ( & s. property . name . as_str ( ) ) {
139+ self . jschanges . add ( rewrite ! ( it. span( ) , WrapGet {
140+ ident: s. property. name,
141+ propspan: Span :: new( s. property. span. start-1 , s. property. span. end) ,
142+ enclose: false ,
143+ } ) ) ;
144+ }
145+ }
146+ MemberExpression :: ComputedMemberExpression ( s) => {
147+ self . jschanges . add ( rewrite ! ( it. span( ) , WrapGetComputed {
148+ leftspan: s. object. span( ) ,
149+ propspan: s. expression. span( ) ,
141150 enclose: false ,
142151 } ) ) ;
143- }
152+ }
153+ _=>{ }
144154 // if !self.flags.strict_rewrites
145155 // && !UNSAFE_GLOBALS.contains(&s.property.name.as_str())
146156 // && let Expression::Identifier(_) | Expression::ThisExpression(_) = &s.object
0 commit comments