diff --git a/VERSION b/VERSION index a83e982..74ff0ec 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -December 06 2024 +December 16 2024 diff --git a/doc/CHANGES b/doc/CHANGES index 1dae0d5..43bb5c2 100644 --- a/doc/CHANGES +++ b/doc/CHANGES @@ -15476,11 +15476,16 @@ August 11 2024 midicopy: introduced -transpose option August 13 2024 -abcmidi: in event_handle_gchord() in store.c increased the size +abc2midi: in event_handle_gchord() in store.c increased the size of variable name to char name[10] to avoid potential buffer overflow. December 06 2024 -abcmidi: process_midix(s) in store.c can cause a segmentation error +abc2midi: process_midix(s) in store.c can cause a segmentation error if it cannot match MIDIx with the corresponding MIDIdef. Fix: added a return statement after reporting the problem in event_error(msg). +December 16 2024 +abc2midi: corrections to the sus, sus4, sus2 and sus9 chords provided +by Avik Topchyan were incorporated in the function setup_chordnames() +into store.c + diff --git a/doc/readme.txt b/doc/readme.txt index 92e3052..48d0262 100644 --- a/doc/readme.txt +++ b/doc/readme.txt @@ -1,7 +1,7 @@ abcMIDI : abc <-> MIDI conversion utilities midi2abc version 3.59 February 08 2023 -abc2midi version 4.95 December 06 2024 +abc2midi version 4.96 December 16 2024 abc2abc version 2.22 April 30 2024 yaps version 1.94 April 30 2024 abcmatch version 1.83 February 19 2024 diff --git a/store.c b/store.c index cad85b3..be4df03 100755 --- a/store.c +++ b/store.c @@ -186,7 +186,7 @@ int main() */ -#define VERSION "4.95 December 06 2024 abc2midi" +#define VERSION "4.96 December 16 2024 abc2midi" /* enables reading V: indication in header */ #define XTEN1 1 @@ -838,9 +838,12 @@ static void setup_chordnames() /* static int list_11[6] = {0, 4, 7, 10, 2, 5}; */ static int list_11[6] = {0, 4, 7, 10, 14, 17}; static int list_dim9[5] = {0, 3, 6, 9, 13}; /* [SS] 2016-02-08 */ - static int list_sus[3] = {0, 5, 7}; - static int list_sus4[3] = {0, 3, 5}; /* [SS] 2015-07-08 2024-06-11 */ - static int list_sus9[3] = {0, 2, 7}; + + static int list_sus[3] = {0, 5, 7}; /* [AT] sus is a synonym of sus4 */ + static int list_sus4[3] = {0, 5, 7}; /* [SS] 2015-07-08 [AT] 2024-12-16*/ + static int list_sus2[3] = {0, 2, 7}; /* [AT] 2024-12-16 */ + static int list_sus9[4] = {0, 2, 5, 9}; /* [AT] 2024-12-16 */ + static int list_7sus4[4] = {0, 5, 7, 10}; static int list_7sus9[4] = {0, 2, 7, 10}; static int list_5[2] = {0, 7}; @@ -865,10 +868,12 @@ static void setup_chordnames() addchordname("M9", 5, list_M9); addchordname("11", 6, list_11); addchordname("dim9", 5, list_dim9); - addchordname("sus", 3, list_sus); - addchordname("sus4", 3, list_sus4); /* [SS] 2015-07-08 */ - addchordname("sus9", 3, list_sus9); - addchordname("sus2", 3, list_sus9); /* [SS] 2015-07-08 */ + + addchordname("sus", 3, list_sus); /* [AT] sus is a synonym of sus4 */ + addchordname("sus4", 3, list_sus4); /* [SS] 2015-07-08 [AT] 2024-12-16 */ + addchordname("sus2", 3, list_sus2); /* [SS] 2015-07-08 [AT] 2024-12-16 */ + addchordname("sus9", 3, list_sus9); /* [AT] 2024-12-16 */ + addchordname("7sus2", 4, list_7sus9); /* [SS] 2015-07-08 */ addchordname("7sus4", 4, list_7sus4); addchordname("7sus9", 4, list_7sus9);