mirror of
https://github.com/EngineHub/WorldEdit.git
synced 2024-12-15 04:41:37 +08:00
Remove class shutter
Runtime classes are no longer conflicting. Fixes #1895.
This commit is contained in:
parent
fbf61ef9e8
commit
6008fe7333
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* WorldEdit, a Minecraft world manipulation toolkit
|
||||
* Copyright (C) sk89q <http://www.sk89q.com>
|
||||
* Copyright (C) WorldEdit team and contributors
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package com.sk89q.worldedit.scripting;
|
||||
|
||||
import org.mozilla.javascript.ClassShutter;
|
||||
|
||||
/**
|
||||
* Hides Minecraft's obfuscated & de-obfuscated names from scripts.
|
||||
*/
|
||||
class MinecraftHidingClassShutter implements ClassShutter {
|
||||
@Override
|
||||
public boolean visibleToScripts(String fullClassName) {
|
||||
if (!fullClassName.contains(".")) {
|
||||
// Default package -- probably Minecraft
|
||||
return false;
|
||||
}
|
||||
return !fullClassName.startsWith("net.minecraft");
|
||||
}
|
||||
}
|
@ -45,11 +45,9 @@ public int getTimeLimit() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object evaluate(String script, String filename, Map<String, Object> args)
|
||||
throws ScriptException, Throwable {
|
||||
public Object evaluate(String script, String filename, Map<String, Object> args) throws Throwable {
|
||||
RhinoContextFactory factory = new RhinoContextFactory(timeLimit);
|
||||
Context cx = factory.enterContext();
|
||||
cx.setClassShutter(new MinecraftHidingClassShutter());
|
||||
ScriptableObject scriptable = new ImporterTopLevel(cx);
|
||||
Scriptable scope = cx.initStandardObjects(scriptable);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user