-1.3.50
+* Bugfix in smob handling. Delete the C-part of freed smobs. Be
+honest about amount of allocation and deletion, so GUILE doesn't
+overestimate the amount of memory.
+
+* Faq update: nicer blank note paper, courtesy Mats Bengtsson.
+
+* Bugfix: don't crash on durations that are not a power of 2.
+
+* Build manpages during `make all'
+
+* Bugfix: don't do absolute comparisons in Polynomial::clean ().
+
+* Bugfix: set visibility-lambda for key signature created by
+createKeyOnClefChange. Fixes disappearing key signatures.
+
+* Bugfix: make System_start_delimiter of bar-line type invisible when
+it spans only one staff.
+
+1.3.51
======
* Item cleanups. Copying items and rearranging pointers are done in
* Use Scheme for Key_item data members.
* Don't use regex in chord-names.scm under windows; hybrid chordnames
- user+calculated will be partly broken.
-
+user+calculated will be partly broken.
1.3.50
======
@subsubsection Can I make blank manuscript paper with LilyPond?
-Theoretically, yes but it is easier to do with TeX:
+Theoretically, yes but it is easier to do with (La)TeX. This LaTeX file
+will do the trick for you:
+
@example
-\def\foo@{\hbox@{\vrule width 15.0cm height 0.5pt depth 0.0pt@}
-\nointerlineskip
-\vskip 5pt\nointerlineskip@}
-\def\musicline@{\vbox @{
- \foo\foo\foo\foo\foo
-@}\par@}
-
-\musicline
-\musicline
-\musicline
-\musicline
-\bye
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% notepaper.tex
+% Mats Bengtsson, 18/5 2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass[a4paper]@{article@}
+
+\usepackage@{ifthen@}
+\usepackage[noheadfoot,hmargin=15mm,vmargin=20mm]@{geometry@}
+
+\pagestyle@{empty@}
+
+\newcounter@{staffnumber@}
+\newlength@{\interstaffline@}
+
+\newcommand@{\drawline@}@{\hbox@{\rule@{\textwidth@}@{0.5pt@}@}
+ \nointerlineskip\vskip\interstaffline\nointerlineskip@}
+
+\newcommand@{\printstaff@}@{\vfill
+ \vbox@{\drawline\drawline\drawline\drawline\drawline@}
+ \vfill@}
+
+\begin@{document@}
+\typeout@{@}\typeout@{@}
+\typein[\staffsize]@{Type in the staff size (20pt is a common value):@}
+\setlength@{\interstaffline@}@{\staffsize@}
+\setlength@{\interstaffline@}@{.25\interstaffline@}
+\typeout@{@}
+\typein[\num]@{Type in the number of staffs:@}
+\setcounter@{staffnumber@}@{\num@}
+
+\mbox@{@} % To get a starting point for the \vfill
+\whiledo@{\value@{staffnumber@}>0@}@{%
+ \printstaff \addtocounter@{staffnumber@}@{-1@}@}
+\end@{document@}
@end example
PACKAGE_NAME=LilyPond
MAJOR_VERSION=1
MINOR_VERSION=3
-PATCH_LEVEL=51
+PATCH_LEVEL=52
MY_PATCH_LEVEL=
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
SCM_CAR(self_scm_) = SCM_EOL; \
SCM_CDR(self_scm_) = SCM_EOL; \
self_scm_ = SCM_EOL; \
+\
+ scm_done_malloc ( - sizeof (CL));\
} \
\
SCM \
self_scm_ = s; \
scm_protect_object (s); \
\
-/* no scm_done_malloc() ! */ \
+ scm_done_malloc(sizeof(CL));\
do_smobify_self(); \
return s; \
} \
/* someone else did the deed already; this might be an automatic var.*/ \
if (s->self_scm_ != ses)\
return 0; \
+\
+ /* no need to call scm_unprotect_object, since this call \
+ implies that the object is not protected. */ \
SCM_CAR(ses) = SCM_EOL;\
- \
- return 0;\
-} \
+ delete s;\
+ return sizeof (CL);\
+} \
ADD_SCM_INIT_FUNC(CL, CL::init_smobs)\