@@ -131,7 +131,7 @@ pub struct InnerRuntime {
131131}
132132impl InnerRuntime {
133133 pub fn new ( options : RuntimeOptions ) -> Result < Self , Error > {
134- let loader = Rc :: new ( RustyLoader :: new ( options. module_cache ) ) ;
134+ let module_loader = Rc :: new ( RustyLoader :: new ( options. module_cache ) ) ;
135135
136136 // If a snapshot is provided, do not reload ops
137137 let extensions = if options. startup_snapshot . is_some ( ) {
@@ -140,26 +140,31 @@ impl InnerRuntime {
140140 ext:: all_extensions ( options. extensions , options. extension_options )
141141 } ;
142142
143- Ok ( Self {
144- deno_runtime : JsRuntime :: try_new ( deno_core:: RuntimeOptions {
145- module_loader : Some ( loader. clone ( ) ) ,
143+ let mut deno_runtime = JsRuntime :: try_new ( deno_core:: RuntimeOptions {
144+ module_loader : Some ( module_loader. clone ( ) ) ,
146145
147- extension_transpiler : Some ( Rc :: new ( |specifier, code| {
148- transpile_extension ( & specifier, & code)
149- } ) ) ,
146+ extension_transpiler : Some ( Rc :: new ( |specifier, code| {
147+ transpile_extension ( & specifier, & code)
148+ } ) ) ,
150149
151- source_map_getter : Some ( loader . clone ( ) ) ,
152- create_params : options. isolate_params ,
153- shared_array_buffer_store : options. shared_array_buffer_store ,
150+ source_map_getter : Some ( module_loader . clone ( ) ) ,
151+ create_params : options. isolate_params ,
152+ shared_array_buffer_store : options. shared_array_buffer_store ,
154153
155- startup_snapshot : options. startup_snapshot ,
156- extensions,
154+ startup_snapshot : options. startup_snapshot ,
155+ extensions,
157156
158- ..Default :: default ( )
159- } ) ?,
157+ ..Default :: default ( )
158+ } ) ?;
160159
161- module_loader : loader,
160+ // Stub out bad and naughty functions
161+ deno_runtime
162+ . execute_script ( "" , "Deno.core.ops.op_panic = Deno.core.ops.op_panic2;" )
163+ . map_err ( |e| Error :: Runtime ( format ! ( "Could not initialize sandbox: {e}" ) ) ) ?;
162164
165+ Ok ( Self {
166+ deno_runtime,
167+ module_loader,
163168 options : RuntimeOptions {
164169 timeout : options. timeout ,
165170 default_entrypoint : options. default_entrypoint ,
0 commit comments