Author: jonathan
Date: Mon Apr  9 13:16:43 2007
New Revision: 18066

Modified:
   trunk/src/inter_call.c

Log:
Fix to allow calling of non-PCCMETHOD methods using PCCINVOKE.

Modified: trunk/src/inter_call.c
==============================================================================
--- trunk/src/inter_call.c      (original)
+++ trunk/src/inter_call.c      Mon Apr  9 13:16:43 2007
@@ -59,7 +59,11 @@
 int
 Parrot_init_arg_nci(Interp *interp, struct call_state *st, const char *sig)
 {
-    Parrot_init_arg_op(interp, CONTEXT(interp->ctx), interp->current_args, 
&st->src);
+    if (PMC_IS_NULL(interp->args_signature))
+        Parrot_init_arg_op(interp, CONTEXT(interp->ctx), interp->current_args, 
&st->src);
+    else
+        Parrot_init_arg_indexes_and_sig_pmc(interp, CONTEXT(interp->ctx),
+            interp->current_args, interp->args_signature, &st->src);
     Parrot_init_arg_sig(interp, CONTEXT(interp->ctx), sig, NULL, &st->dest);
     return 1;
 }

Reply via email to