[ --enable-debugging compile with debugging info. Default: on],
[debug_b=$enableval])
+ AC_ARG_ENABLE(optimising,
+ [ --enable-optimising compile with optimising. Default: on],
+ [optimise_b=$enableval])
+
AC_ARG_ENABLE(profiling,
[ --enable-profiling compile with gprof support. Default: off],
[profile_b=$enableval])
AC_HAVE_HEADERS(assert.h sys/stat.h)
AC_HEADER_STAT
-DEFINES="$DEFINES -DSTRING_UTILS_INLINED"
-AC_DEFINE(STRINGS_UTILS_INLINED)
-
AC_STEPMAKE_CXX
AC_STEPMAKE_GXX
AC_STEPMAKE_CXXTEMPLATE
AC_STEPMAKE_KPATHSEA
AC_STEPMAKE_BIBTEX2HTML
+
+if test "$optimise_b" = yes; then
+ DEFINES="$DEFINES -DSTRING_UTILS_INLINED"
+ AC_DEFINE(STRINGS_UTILS_INLINED)
+fi
+
+
dnl should check out -print
dnl huh?
dnl AC_CHECK_SEARCH_RESULT($FIND, find, Please use --enable-tex-dir)
debug_print ("%s", "\n");
track_size = track_end - *track;
-#if 0
- /* need this for direct midi.parse_track (s) on midi file */
- if (strcmp (*track, "MTrk"))
- *track = memmem (*track, track_size - 1, "MTrk", 4);
-#endif
debug_print ("%s", "\n");
- if (!strcmp (*track, "MTrk"))
- return midi_error ("parse_track(): MTrk expected");
+ if (strcmp (*track, "MTrk"))
+ return midi_error (__FUNCTION__ ": MTrk expected");
*track += 4;
debug_print ("track begin: %p\n", track);
debug_print ("track end: %p\n", track + track_len);
- //assert (track_len <= track_size);
+ if (track_len > track_size)
+ return midi_error (__FUNCTION__ ": track size corrupt");
pytrack = PyList_New (0);
return 0;
if (track_size < 0)
- return midi_error ("negative track size");
+ return midi_error (__FUNCTION__ ": negative track size");
track_end = track + track_size;
if (header_len < 6)
- return midi_error ("header too short");
+ return midi_error (__FUNCTION__ ": header too short");
format = get_number (midi, *midi + 2, 2);
tracks = get_number (midi, *midi + 2, 2);
if (tracks > 32)
- return midi_error ("too many tracks");
+ return midi_error (__FUNCTION__ ": too many tracks");
division = get_number (midi, *midi + 2, 2) * 4;
return 0;
if (strcmp (midi, "MThd"))
- return midi_error ("MThd expected");
+ return midi_error (__FUNCTION__ ": MThd expected");
midi += 4;
[ --enable-debugging compile with debugging info. Default: on],
[debug_b=$enableval])
+ AC_ARG_ENABLE(optimising,
+ [ --enable-optimising compile with optimising. Default: on],
+ [optimise_b=$enableval])
+
AC_ARG_ENABLE(profiling,
[ --enable-profiling compile with gprof support. Default: off],
[profile_b=$enableval])