vhardy      2003/07/13 15:30:57

  Modified:    sources/org/apache/batik/script/rhino
                        EventTargetWrapper.java
  Log:
  Added enterContext / Context.exit to HandleEventListener
  
  Revision  Changes    Path
  1.10      +9 -3      
xml-batik/sources/org/apache/batik/script/rhino/EventTargetWrapper.java
  
  Index: EventTargetWrapper.java
  ===================================================================
  RCS file: 
/home/cvs/xml-batik/sources/org/apache/batik/script/rhino/EventTargetWrapper.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- EventTargetWrapper.java   9 Jul 2003 02:10:11 -0000       1.9
  +++ EventTargetWrapper.java   13 Jul 2003 22:30:57 -0000      1.10
  @@ -68,13 +68,16 @@
   
           private Scriptable scriptable;
           private Object[] array = new Object[1];
  +        private RhinoInterpreter interpreter;
   
  -        HandleEventListener(Scriptable s) {
  +        HandleEventListener(Scriptable s, RhinoInterpreter interpreter) {
               scriptable = s;
  +            this.interpreter = interpreter;
           }
           public void handleEvent(Event evt) {
               try {
                   array[0] = evt;
  +                interpreter.enterContext();
                   ScriptableObject.callMethod(scriptable, HANDLE_EVENT, array);
               } catch (JavaScriptException e) {
                   // the only simple solution is to forward it as a
  @@ -82,6 +85,8 @@
                   // in BridgeEventSupport.java
                   // another solution will to give UserAgent to interpreters
                   throw new WrappedException(e);
  +            } finally {
  +                Context.exit();
               }
           }
       }
  @@ -118,7 +123,8 @@
               } 
               if (args[1] instanceof NativeObject) {
                   EventListener evtListener =
  -                    new HandleEventListener((Scriptable)args[1]);
  +                    new HandleEventListener((Scriptable)args[1], 
  +                                             
((RhinoInterpreter.ExtendedContext)ctx).getInterpreter());
                   listenerMap.put(args[1], evtListener);
                   // we need to marshall args
                   Class[] paramTypes = { String.class, Scriptable.class,
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to