/[svn]/libgig/trunk/ChangeLog
ViewVC logotype

Diff of /libgig/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3349 by schoenebeck, Tue Oct 3 17:12:07 2017 UTC revision 3478 by schoenebeck, Thu Feb 21 20:10:08 2019 UTC
# Line 1  Line 1 
1  Version SVN trunk  Version SVN trunk (?)
2    
3      * general changes:
4        - Added MSVC build support (anonymous patch from mailing list).
5        - Introduced CMake build support (yet constrained for building with MSVC)
6          (anonymous patch from mailing list).
7        - Fix: Don't automatically delete RIFF chunks from DLS/gig classes'
8          destructors. Added new virtual method DeleteChunks() to those classes
9          for this which must be explicitly called instead to remove their RIFF
10          chunks.
11        - Fix: Many methods of DLS/gig classes assumed a RIFF chunk read position
12          of zero; which is unsafe per se.
13        - Added C++11 "override" keyword where appropriate.
14    
15      * src/gig.cpp, src/gig.h:
16        - Fixed Doxygen API comments for enum types (currently latest Doxygen
17          [v1.8.13] only supports C comments in macro arguments expansion, but
18          not C++ comments; see <FindDefineArgs> lexer rules in src/pre.l of
19          the Doxygen source code, which currently also filter out new line
20          \n chars).
21        - Added new method File::CountSamples().
22        - Added new method File::CountInstruments().
23        - Fixed gig v4 files falsely being handled as v2 format
24          (patch by Ivan Maguidhir).
25        - Added gig v4 version identifier (File::VERSION_4).
26        - GIG FORMAT EXTENSION: Added attribute
27          DimensionRegion::SustainReleaseTrigger which allows to define whether
28          a sustain pedal up event shall cause a release trigger sample to be
29          played (default: don't play release trigger sample by sustain pedal).
30        - GIG FORMAT EXTENSION: Added attribute
31          DimensionRegion::NoNoteOffReleaseTrigger which allows to disable the
32          regular behaviour of playing release trigger sample on MIDI note-off
33          events.
34        - Introduced support for writing extension files (.gx01, .gx02, ...)
35          (original patch by Ivan Maguidhir).
36        - Many gig classes derive now from DLS::Storage (see DLS changes below).
37    
38      * src/DLS.cpp, src/DLS.h:
39        - File: Fixed implicitly allocated RIFF::File object never been freed.
40        - Added new abstract interface base class DLS::Storage which is derived by
41          the respective classes for implementing (the old) UpdateChunks() and the
42          new DeleteChunks() method.
43    
44      * src/Serialization.cpp, src/Serialization.h:
45        - Hide pure internal declarations from header file to avoid numerous
46          compiler warnings when building and linking against the public API.
47        - Fixed comparision logic bug
48        - Fixed memory leak in DataType::customTypeName().
49    
50      * src/RIFF.cpp, src/RIFF.h:
51        - Fix: Calling File::SetMode() left an undefined file handle on Windows and
52          caused a resource leak
53        - Avoid compiler warning when building for 32 bit windows.
54        - Added new method progress_t::subdivide().
55    
56      * src/tools/gigdump.cpp:
57        - Added command line option --instrument-names which causes only
58          instrument names and their index numbers to be printed.
59    
60    Version 4.1.0 (25 Nov 2017)
61    * general changes:    * general changes:
62      - removed 2 GB limitation when loading a gig or DLS file      - removed 2 GB limitation when loading a gig or DLS file
63      - using now native integer size where appropriate      - using now native integer size where appropriate
# Line 12  Version SVN trunk Line 71  Version SVN trunk
71        korgdump and sf2extract.        korgdump and sf2extract.
72      - Fixed CVE-2017-12950, CVE-2017-12952, CVE-2017-12953      - Fixed CVE-2017-12950, CVE-2017-12952, CVE-2017-12953
73        (original patch by Paul Brossier, slightly modified).        (original patch by Paul Brossier, slightly modified).
74        - Debian: Fixed packaging error about invalid substitution variable
75          "Source-Version".
76        - Raised Debian compatibility level to Debian 9 "Stretch".
77    
78    * src/gig.cpp, src/gig.h:    * src/gig.cpp, src/gig.h:
79      - fixed bug in Script::SetGroup: the script chunk wasn't moved      - fixed bug in Script::SetGroup: the script chunk wasn't moved
# Line 50  Version SVN trunk Line 112  Version SVN trunk
112        behavior of the first two EGs' state machines.        behavior of the first two EGs' state machines.
113      - Fixed undefined behavior when loading a gig file with invalid      - Fixed undefined behavior when loading a gig file with invalid
114        velocity curve parameters (fixes CVE-2017-12951).        velocity curve parameters (fixes CVE-2017-12951).
115        - Fixed undefined behavior when loading a gig file with invalid wave
116          pool index number (fixes CVE-2017-12954).
117    
118    * src/DLS.cpp, src/DLS.h:    * src/DLS.cpp, src/DLS.h:
119      - Sample: wave pool offsets are now 64 bits (to allow support for files      - Sample: wave pool offsets are now 64 bits (to allow support for files
120        larger than 4 GB).        larger than 4 GB).
121      - Exception class now has a variadic constructor which allows to add      - Exception class now has a variadic constructor which allows to add
122        textual format specifiers like with printf().        textual format specifiers like with printf().
123          
124    * src/RIFF.cpp, src/RIFF.h:    * src/RIFF.cpp, src/RIFF.h:
125      - added support for RIFF files larger than 4 GB, by default the required      - added support for RIFF files larger than 4 GB, by default the required
126        internal RIFF file offset size is automatically detected (that is RIFF        internal RIFF file offset size is automatically detected (that is RIFF
# Line 95  Version SVN trunk Line 159  Version SVN trunk
159      - DataType fix: Retain backward compatibility to older versions of native      - DataType fix: Retain backward compatibility to older versions of native
160        C++ classes/structs.        C++ classes/structs.
161    
162      * src/Akai.cpp:
163        - Fixed compilation error with recent, more strict compilers.
164    
165    * src/tools/akaidump.cpp, src/tools/akaiextract.cpp:    * src/tools/akaidump.cpp, src/tools/akaiextract.cpp:
166      - improved output of non-ascii characters in usage messages      - improved output of non-ascii characters in usage messages
167      - fixed printf format strings      - fixed printf format strings

Legend:
Removed from v.3349  
changed lines
  Added in v.3478

  ViewVC Help
Powered by ViewVC