mirror of
https://github.com/sshlien/abcmidi.git
synced 2025-12-08 19:01:02 +00:00
Compare commits
2 Commits
2021.04.26
...
2021.05.10
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
96570dbb2d | ||
|
|
2ed90eeff0 |
42
doc/CHANGES
42
doc/CHANGES
@@ -14162,3 +14162,45 @@ do not exist in midi files. Using a cumulative beat count does not
|
|||||||
detect the possibility that the bar lines can realign because of
|
detect the possibility that the bar lines can realign because of
|
||||||
two errors cancelling out. As an experiment, I save only the bar size.
|
two errors cancelling out. As an experiment, I save only the bar size.
|
||||||
|
|
||||||
|
|
||||||
|
May 09 2020
|
||||||
|
|
||||||
|
abc2midi, abc2abc, yaps -- compatibility with abcm2ps.
|
||||||
|
The %%beginps and %%endps enclose text which should not
|
||||||
|
be processed by abc2midi or abc2abc. The flag ignore_line is set
|
||||||
|
to 1 when parseline() encounters "%%beginps" and is reset to 0
|
||||||
|
when %%endps" is encountered. If ignore_line is 1, the rest of
|
||||||
|
the code in parseline() is ignored when abc2midi is running.
|
||||||
|
|
||||||
|
|
||||||
|
May 10 2020
|
||||||
|
|
||||||
|
abc2midi: the following file causes a core dump.
|
||||||
|
|
||||||
|
X:1
|
||||||
|
T:Autumn Ale
|
||||||
|
C:Chance Thomas, Stephen DiGregorio, Geoff Scott and/or Brad Spear
|
||||||
|
R:Jig
|
||||||
|
S:The Lord of the Rings Online Soundtrack
|
||||||
|
O:Turbine's Middle Earth
|
||||||
|
Z:Northman
|
||||||
|
N:This is not intended for percussion instruments.
|
||||||
|
Q:333
|
||||||
|
M:6/8
|
||||||
|
L:1/8
|
||||||
|
K:D
|
||||||
|
AGA BA/3B/3A/3G | FE/3F/3E/3D EFG |
|
||||||
|
|
||||||
|
abc2midi notpowerof2.abc
|
||||||
|
4.53 May 09 2021 abc2midi
|
||||||
|
Error in line-char 13-5 : 3 b is not a power of 2
|
||||||
|
Error in line-char 13-8 : 3 b is not a power of 2
|
||||||
|
Floating point exception (core dumped)
|
||||||
|
|
||||||
|
Analysis: the crash occurs in the function reduce (0)
|
||||||
|
which cannot handle a division by zero. The function
|
||||||
|
check_power_of_two(3) in parseabc.c returns 0 when the
|
||||||
|
argument is not a power of 2. Fix: changed the return
|
||||||
|
to -1. The program does not crash but the midi file
|
||||||
|
is not created correctly.
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
abcMIDI : abc <-> MIDI conversion utilities
|
abcMIDI : abc <-> MIDI conversion utilities
|
||||||
|
|
||||||
midi2abc version 3.47 November 01 2020
|
midi2abc version 3.47 November 01 2020
|
||||||
abc2midi version 4.52 April 26 2021
|
abc2midi version 4.54 May 10 2021
|
||||||
abc2abc version 2.12 October 19 2020
|
abc2abc version 2.13 May 08 2021
|
||||||
yaps version 1.86 December 10 2020
|
yaps version 1.86 December 10 2020
|
||||||
abcmatch version 1.78 March 27 2021
|
abcmatch version 1.78 March 27 2021
|
||||||
midicopy version 1.37 October 10 2020
|
midicopy version 1.37 October 10 2020
|
||||||
|
|||||||
10
parseabc.c
10
parseabc.c
@@ -420,7 +420,7 @@ int check_power_of_two(int denom)
|
|||||||
if (t % 2 != 0) {
|
if (t % 2 != 0) {
|
||||||
snprintf(error_message, 80, "%d b is not a power of 2", denom);
|
snprintf(error_message, 80, "%d b is not a power of 2", denom);
|
||||||
event_error (error_message);
|
event_error (error_message);
|
||||||
return 0;
|
return -1;
|
||||||
} else {
|
} else {
|
||||||
t = t / 2;
|
t = t / 2;
|
||||||
}
|
}
|
||||||
@@ -3149,6 +3149,14 @@ parseline (line)
|
|||||||
if (strcmp(line,"%%endtext") == 0) {
|
if (strcmp(line,"%%endtext") == 0) {
|
||||||
ignore_line = 0;
|
ignore_line = 0;
|
||||||
}
|
}
|
||||||
|
/* [SS] 2021-05-09 */
|
||||||
|
if (strcmp(line,"%%beginps") == 0) {
|
||||||
|
ignore_line = 1;
|
||||||
|
}
|
||||||
|
if (strcmp(line,"%%endps") == 0) {
|
||||||
|
ignore_line = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if ((strncmp(line,"%%temperament",12) == 0) && fileprogram == ABC2MIDI) {
|
if ((strncmp(line,"%%temperament",12) == 0) && fileprogram == ABC2MIDI) {
|
||||||
event_temperament(line);
|
event_temperament(line);
|
||||||
}
|
}
|
||||||
|
|||||||
2
store.c
2
store.c
@@ -186,7 +186,7 @@ int main()
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define VERSION "4.52 April 26 2021 abc2midi"
|
#define VERSION "4.54 May 10 2021 abc2midi"
|
||||||
|
|
||||||
/* enables reading V: indication in header */
|
/* enables reading V: indication in header */
|
||||||
#define XTEN1 1
|
#define XTEN1 1
|
||||||
|
|||||||
2
toabc.c
2
toabc.c
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
/* back-end for outputting (possibly modified) abc */
|
/* back-end for outputting (possibly modified) abc */
|
||||||
|
|
||||||
#define VERSION "2.13 December 10 2020 abc2abc"
|
#define VERSION "2.14 May 09 2021 abc2abc"
|
||||||
|
|
||||||
/* for Microsoft Visual C++ 6.0 or higher */
|
/* for Microsoft Visual C++ 6.0 or higher */
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
|
|||||||
Reference in New Issue
Block a user