* libguile/procprop.c (scm_i_procedure_arity): Fix infinite loop.
{
if (!SCM_SMOB_APPLICABLE_P (proc))
return 0;
- if (scm_i_program_arity (SCM_SMOB_DESCRIPTOR (proc).apply_trampoline,
- req, opt, rest))
- /* The trampoline gets the smob too, which users don't
- see. */
- *req -= 1;
+ if (!scm_i_program_arity (SCM_SMOB_DESCRIPTOR (proc).apply_trampoline,
+ req, opt, rest))
+ return 0;
+
+ /* The trampoline gets the smob too, which users don't
+ see. */
+ *req -= 1;
+
+ return 1;
}
else
return 0;