This commit is contained in:
Anuken
2021-06-08 22:07:45 -04:00
parent 25b2458a92
commit 91c0235ff5
3 changed files with 17 additions and 4 deletions

View File

@ -18,7 +18,6 @@ import dalvik.system.*;
import mindustry.*;
import mindustry.game.Saves.*;
import mindustry.io.*;
import mindustry.mod.*;
import mindustry.net.*;
import mindustry.ui.dialogs.*;
@ -67,9 +66,7 @@ public class AndroidLauncher extends AndroidApplication{
@Override
public rhino.Context getScriptContext(){
rhino.Context result = AndroidRhinoContext.enter(((Context)AndroidLauncher.this).getCacheDir());
result.setClassShutter(Scripts::allowClass);
return result;
return AndroidRhinoContext.enter(getCacheDir());
}
@Override

View File

@ -13,6 +13,8 @@ import com.android.dx.dex.cf.*;
import com.android.dx.dex.file.DexFile;
import com.android.dx.merge.*;
import dalvik.system.*;
import mindustry.*;
import mindustry.mod.*;
import rhino.*;
import java.io.*;
@ -78,6 +80,16 @@ public class AndroidRhinoContext{
initApplicationClassLoader(createClassLoader(AndroidContextFactory.class.getClassLoader()));
}
@Override
protected Context makeContext(){
Context ctx = super.makeContext();
ctx.setClassShutter(Scripts::allowClass);
if(Vars.mods != null){
ctx.setApplicationClassLoader(Vars.mods.mainLoader());
}
return ctx;
}
/**
* Create a ClassLoader which is able to deal with bytecode
* @param parent the parent of the create classloader

View File

@ -7,6 +7,7 @@ import arc.math.*;
import arc.struct.*;
import arc.util.*;
import arc.util.serialization.*;
import mindustry.*;
import mindustry.mod.*;
import mindustry.net.*;
import mindustry.net.Net.*;
@ -64,6 +65,9 @@ public interface Platform{
protected Context makeContext(){
Context ctx = super.makeContext();
ctx.setClassShutter(Scripts::allowClass);
if(Vars.mods != null){
ctx.setApplicationClassLoader(Vars.mods.mainLoader());
}
return ctx;
}
});