- if (!Text_interface::markup_p (m)
- && ly_c_procedure_p (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_int2num (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"));
- }
-
- if (Text_interface::markup_p (m))
- text_->set_property ("text", m);
+ if (!Text_interface::is_markup (m)
+ && 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"));
+ }
+
+ if (Text_interface::is_markup (m))
+ text_->set_property ("text", m);