### Eclipse Workspace Patch 1.0
#P sophie
Index: modules/org.sophie2.extra.func.scripting/src/main/java/org/sophie2/extra/func/scripting/logic/RunScriptLogic.java
===================================================================
--- modules/org.sophie2.extra.func.scripting/src/main/java/org/sophie2/extra/func/scripting/logic/RunScriptLogic.java	(revision 8404)
+++ modules/org.sophie2.extra.func.scripting/src/main/java/org/sophie2/extra/func/scripting/logic/RunScriptLogic.java	(working copy)
@@ -137,8 +137,9 @@
 			BookView bookView = event.getSource(BookView.class);
 
 			ResourceRefR4 scriptRef = action.getRef();
-			ResourceView trigerElement = event.getContext(ResourceView.class);
-			ResourceAccess scriptAccess = trigerElement.getAccess().open(scriptRef, null);
+			ResourceAccess access = event.getEventParam(
+					LinkEvent.RESOURCE_ACCESS_PARAM_INDEX, ResourceAccess.class);
+			ResourceAccess scriptAccess = access.open(scriptRef, null);
 			String script = ScriptResourceR4.KEY_SOURCE_CODE.get(scriptAccess);
 
 			final Context context = ContextFactory.getGlobal().enterContext();
Index: modules/org.sophie2.extra.func.scripting/src/main/java/org/sophie2/extra/func/scripting/links/RunScriptConfigurationPanel.java
===================================================================
--- modules/org.sophie2.extra.func.scripting/src/main/java/org/sophie2/extra/func/scripting/links/RunScriptConfigurationPanel.java	(revision 8404)
+++ modules/org.sophie2.extra.func.scripting/src/main/java/org/sophie2/extra/func/scripting/links/RunScriptConfigurationPanel.java	(working copy)
@@ -31,6 +31,7 @@
 import org.sophie2.extra.func.scripting.model.ScriptResourceR4;
 import org.sophie2.main.app.commons.book.BookDocView;
 import org.sophie2.main.app.commons.links.LinkHolder;
+import org.sophie2.main.app.commons.util.AppViewUtil;
 import org.sophie2.main.func.links.ActionConfigurationPanel;
 import org.sophie2.main.func.links.LinksHud;
 import org.sophie2.main.func.links.LinksUtil;
@@ -117,7 +118,7 @@
 
 		@Override
 		protected ComboState<ScriptResourceH> computeModelData() {
-			BookDocView bdv = findParentElement(BookDocView.class);
+			BookDocView bdv = AppViewUtil.getCurrentBookDocView(this);
 			if (bdv == null || bdv.model().get() == null) {
 				return new ComboState<ScriptResourceH>("",
 						Collections.<ScriptResourceH> emptyList(), null);
@@ -129,10 +130,8 @@
 					&& hud.currentRule().get() != null
 					&& hud.currentRule().get().getAction() != null
 					&& hud.currentRule().get().getAction() instanceof RunScriptAction
-					&& ((RunScriptAction) hud.currentRule().get().getAction())
-					.getRef() != null) {
-				ruleScript = ((RunScriptAction) hud.currentRule().get().getAction()
-				).getRef();
+					&& ((RunScriptAction) hud.currentRule().get().getAction()).getRef() != null) {
+				ruleScript = ((RunScriptAction) hud.currentRule().get().getAction()).getRef();
 			}
 			ScriptResourceH ruleScriptH = null;
 			BookH book = bdv.model().get();
@@ -145,8 +144,12 @@
 					ScriptResourceH script = 
 						ResourceH.getHelper(childAccess, ScriptResourceH.class);
 					scripts.add(script);
-					if (script.getRef().equals(ruleScript)) {
-						ruleScriptH = script;
+					if (hud != null && hud.holder().get() != null) {
+						ResourceRefR4 scriptRef = 
+							ResourceRefR4.getRelativeRef(hud.holder().get().getRef(), script.getRef());
+						if (scriptRef.equals(ruleScript)) {
+							ruleScriptH = script;
+						}
 					}
 				}
 			}

