- && ly_is_procedure (proc))
- {
- if (!scm_is_number (m))
- m = get_property ("rehearsalMark");
-
- if (scm_integer_p (m) == SCM_BOOL_T
- && scm_exact_p (m) == SCM_BOOL_T)
- {
- int mark_count = scm_to_int (m);
- mark_count++;
- context ()->set_property ("rehearsalMark",
- scm_from_int (mark_count));
- }
-
- if (scm_is_number (m))
- m = scm_call_2 (proc, m, context ()->self_scm ());
- else
- /* FIXME: constant error message. */
- warning (_ ("rehearsalMark must have integer value"));
- }
+ && ly_is_procedure (proc))
+ {
+ if (!scm_is_number (m))
+ m = get_property ("rehearsalMark");
+
+ if (scm_is_number (m))
+ {
+ context ()->set_property ("rehearsalMark", scm_oneplus (m));
+ m = scm_call_2 (proc, m, context ()->self_scm ());
+ }
+ else
+ /* Score.rehearsalMark is initialized to #1 so we
+ never should see this case without user error */
+ mark_ev_->origin ()->warning
+ (_ ("rehearsalMark must have integer value"));
+ }