[SCM] calf/master: Initialize uninitialized variables. Style improvements.

js at users.alioth.debian.org js at users.alioth.debian.org
Tue May 7 15:40:47 UTC 2013


The following commit has been merged in the master branch:
commit a63e97ec9e24b8849745c03603770227dd467595
Author: Markus Schmidt <schmidt at boomshop.net>
Date:   Wed Dec 21 09:59:52 2011 +0000

    Initialize uninitialized variables. Style improvements.

diff --git a/src/.deps/modules_limit.Plo b/src/.deps/modules_limit.Plo
deleted file mode 100644
index e002390..0000000
--- a/src/.deps/modules_limit.Plo
+++ /dev/null
@@ -1,449 +0,0 @@
-modules_limit.lo: modules_limit.cpp \
- /usr/lib/gcc/i686-linux-gnu/4.6.1/include-fixed/limits.h \
- /usr/lib/gcc/i686-linux-gnu/4.6.1/include-fixed/syslimits.h \
- /usr/include/limits.h /usr/include/features.h \
- /usr/include/i386-linux-gnu/bits/predefs.h \
- /usr/include/i386-linux-gnu/sys/cdefs.h \
- /usr/include/i386-linux-gnu/bits/wordsize.h \
- /usr/include/i386-linux-gnu/gnu/stubs.h \
- /usr/include/i386-linux-gnu/gnu/stubs-32.h \
- /usr/include/i386-linux-gnu/bits/posix1_lim.h \
- /usr/include/i386-linux-gnu/bits/local_lim.h /usr/include/linux/limits.h \
- /usr/include/i386-linux-gnu/bits/posix2_lim.h \
- /usr/include/i386-linux-gnu/bits/xopen_lim.h \
- /usr/include/i386-linux-gnu/bits/stdio_lim.h /usr/include/memory.h \
- /usr/include/string.h /usr/lib/gcc/i686-linux-gnu/4.6.1/include/stddef.h \
- /usr/include/xlocale.h /usr/include/i386-linux-gnu/bits/string3.h \
- calf/giface.h ../config.h calf/primitives.h /usr/include/assert.h \
- /usr/lib/gcc/i686-linux-gnu/4.6.1/include/stdint.h /usr/include/stdint.h \
- /usr/include/i386-linux-gnu/bits/wchar.h /usr/include/stdio.h \
- /usr/include/i386-linux-gnu/bits/types.h \
- /usr/include/i386-linux-gnu/bits/typesizes.h /usr/include/libio.h \
- /usr/include/_G_config.h /usr/include/wchar.h \
- /usr/lib/gcc/i686-linux-gnu/4.6.1/include/stdarg.h \
- /usr/include/i386-linux-gnu/bits/sys_errlist.h \
- /usr/include/i386-linux-gnu/bits/stdio.h \
- /usr/include/i386-linux-gnu/bits/stdio2.h /usr/include/c++/4.6/cmath \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/os_defines.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/cpu_defines.h \
- /usr/include/c++/4.6/bits/cpp_type_traits.h \
- /usr/include/c++/4.6/ext/type_traits.h /usr/include/math.h \
- /usr/include/i386-linux-gnu/bits/huge_val.h \
- /usr/include/i386-linux-gnu/bits/huge_valf.h \
- /usr/include/i386-linux-gnu/bits/huge_vall.h \
- /usr/include/i386-linux-gnu/bits/inf.h \
- /usr/include/i386-linux-gnu/bits/nan.h \
- /usr/include/i386-linux-gnu/bits/mathdef.h \
- /usr/include/i386-linux-gnu/bits/mathcalls.h \
- /usr/include/i386-linux-gnu/bits/mathinline.h \
- /usr/include/c++/4.6/cstdlib /usr/include/stdlib.h \
- /usr/include/i386-linux-gnu/bits/waitflags.h \
- /usr/include/i386-linux-gnu/bits/waitstatus.h /usr/include/endian.h \
- /usr/include/i386-linux-gnu/bits/endian.h \
- /usr/include/i386-linux-gnu/bits/byteswap.h \
- /usr/include/i386-linux-gnu/sys/types.h /usr/include/time.h \
- /usr/include/i386-linux-gnu/sys/select.h \
- /usr/include/i386-linux-gnu/bits/select.h \
- /usr/include/i386-linux-gnu/bits/sigset.h \
- /usr/include/i386-linux-gnu/bits/time.h \
- /usr/include/i386-linux-gnu/sys/sysmacros.h \
- /usr/include/i386-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \
- /usr/include/i386-linux-gnu/bits/stdlib.h /usr/include/c++/4.6/map \
- /usr/include/c++/4.6/bits/stl_tree.h \
- /usr/include/c++/4.6/bits/stl_algobase.h \
- /usr/include/c++/4.6/bits/functexcept.h \
- /usr/include/c++/4.6/bits/exception_defines.h \
- /usr/include/c++/4.6/ext/numeric_traits.h \
- /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \
- /usr/include/c++/4.6/bits/concept_check.h \
- /usr/include/c++/4.6/bits/stl_iterator_base_types.h \
- /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \
- /usr/include/c++/4.6/bits/stl_iterator.h \
- /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/c++allocator.h \
- /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \
- /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \
- /usr/include/c++/4.6/backward/binders.h \
- /usr/include/c++/4.6/bits/stl_map.h \
- /usr/include/c++/4.6/initializer_list \
- /usr/include/c++/4.6/bits/stl_multimap.h \
- /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/complex \
- /usr/include/c++/4.6/sstream /usr/include/c++/4.6/istream \
- /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \
- /usr/include/c++/4.6/bits/stringfwd.h \
- /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \
- /usr/include/i386-linux-gnu/bits/wchar2.h \
- /usr/include/c++/4.6/bits/char_traits.h \
- /usr/include/c++/4.6/bits/localefwd.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/c++locale.h \
- /usr/include/c++/4.6/clocale /usr/include/locale.h \
- /usr/include/i386-linux-gnu/bits/locale.h /usr/include/c++/4.6/cctype \
- /usr/include/ctype.h /usr/include/c++/4.6/bits/ios_base.h \
- /usr/include/c++/4.6/ext/atomicity.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/gthr.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/gthr-default.h \
- /usr/include/pthread.h /usr/include/sched.h \
- /usr/include/i386-linux-gnu/bits/sched.h \
- /usr/include/i386-linux-gnu/bits/setjmp.h /usr/include/unistd.h \
- /usr/include/i386-linux-gnu/bits/posix_opt.h \
- /usr/include/i386-linux-gnu/bits/environments.h \
- /usr/include/i386-linux-gnu/bits/confname.h /usr/include/getopt.h \
- /usr/include/i386-linux-gnu/bits/unistd.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/atomic_word.h \
- /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \
- /usr/include/c++/4.6/bits/ostream_insert.h \
- /usr/include/c++/4.6/bits/cxxabi_forced.h \
- /usr/include/c++/4.6/bits/basic_string.h \
- /usr/include/c++/4.6/bits/basic_string.tcc \
- /usr/include/c++/4.6/bits/locale_classes.tcc \
- /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \
- /usr/include/c++/4.6/bits/basic_ios.h \
- /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \
- /usr/include/wctype.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/ctype_base.h \
- /usr/include/c++/4.6/bits/streambuf_iterator.h \
- /usr/include/c++/4.6/i686-linux-gnu/./bits/ctype_inline.h \
- /usr/include/c++/4.6/bits/locale_facets.tcc \
- /usr/include/c++/4.6/bits/basic_ios.tcc /usr/include/c++/4.6/ostream \
- /usr/include/c++/4.6/bits/ostream.tcc \
- /usr/include/c++/4.6/bits/istream.tcc \
- /usr/include/c++/4.6/bits/sstream.tcc /usr/include/c++/4.6/vector \
- /usr/include/c++/4.6/bits/stl_construct.h \
- /usr/include/c++/4.6/bits/stl_uninitialized.h \
- /usr/include/c++/4.6/bits/stl_vector.h \
- /usr/include/c++/4.6/bits/stl_bvector.h \
- /usr/include/c++/4.6/bits/vector.tcc calf/modules_limit.h calf/biquad.h \
- calf/inertia.h calf/audio_fx.h calf/delay.h calf/buffer.h calf/onepole.h \
- calf/fixed_point.h calf/giface.h calf/metadata.h calf/plugin_tools.h \
- calf/vumeter.h
-
-/usr/lib/gcc/i686-linux-gnu/4.6.1/include-fixed/limits.h:
-
-/usr/lib/gcc/i686-linux-gnu/4.6.1/include-fixed/syslimits.h:
-
-/usr/include/limits.h:
-
-/usr/include/features.h:
-
-/usr/include/i386-linux-gnu/bits/predefs.h:
-
-/usr/include/i386-linux-gnu/sys/cdefs.h:
-
-/usr/include/i386-linux-gnu/bits/wordsize.h:
-
-/usr/include/i386-linux-gnu/gnu/stubs.h:
-
-/usr/include/i386-linux-gnu/gnu/stubs-32.h:
-
-/usr/include/i386-linux-gnu/bits/posix1_lim.h:
-
-/usr/include/i386-linux-gnu/bits/local_lim.h:
-
-/usr/include/linux/limits.h:
-
-/usr/include/i386-linux-gnu/bits/posix2_lim.h:
-
-/usr/include/i386-linux-gnu/bits/xopen_lim.h:
-
-/usr/include/i386-linux-gnu/bits/stdio_lim.h:
-
-/usr/include/memory.h:
-
-/usr/include/string.h:
-
-/usr/lib/gcc/i686-linux-gnu/4.6.1/include/stddef.h:
-
-/usr/include/xlocale.h:
-
-/usr/include/i386-linux-gnu/bits/string3.h:
-
-calf/giface.h:
-
-../config.h:
-
-calf/primitives.h:
-
-/usr/include/assert.h:
-
-/usr/lib/gcc/i686-linux-gnu/4.6.1/include/stdint.h:
-
-/usr/include/stdint.h:
-
-/usr/include/i386-linux-gnu/bits/wchar.h:
-
-/usr/include/stdio.h:
-
-/usr/include/i386-linux-gnu/bits/types.h:
-
-/usr/include/i386-linux-gnu/bits/typesizes.h:
-
-/usr/include/libio.h:
-
-/usr/include/_G_config.h:
-
-/usr/include/wchar.h:
-
-/usr/lib/gcc/i686-linux-gnu/4.6.1/include/stdarg.h:
-
-/usr/include/i386-linux-gnu/bits/sys_errlist.h:
-
-/usr/include/i386-linux-gnu/bits/stdio.h:
-
-/usr/include/i386-linux-gnu/bits/stdio2.h:
-
-/usr/include/c++/4.6/cmath:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/os_defines.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/cpu_defines.h:
-
-/usr/include/c++/4.6/bits/cpp_type_traits.h:
-
-/usr/include/c++/4.6/ext/type_traits.h:
-
-/usr/include/math.h:
-
-/usr/include/i386-linux-gnu/bits/huge_val.h:
-
-/usr/include/i386-linux-gnu/bits/huge_valf.h:
-
-/usr/include/i386-linux-gnu/bits/huge_vall.h:
-
-/usr/include/i386-linux-gnu/bits/inf.h:
-
-/usr/include/i386-linux-gnu/bits/nan.h:
-
-/usr/include/i386-linux-gnu/bits/mathdef.h:
-
-/usr/include/i386-linux-gnu/bits/mathcalls.h:
-
-/usr/include/i386-linux-gnu/bits/mathinline.h:
-
-/usr/include/c++/4.6/cstdlib:
-
-/usr/include/stdlib.h:
-
-/usr/include/i386-linux-gnu/bits/waitflags.h:
-
-/usr/include/i386-linux-gnu/bits/waitstatus.h:
-
-/usr/include/endian.h:
-
-/usr/include/i386-linux-gnu/bits/endian.h:
-
-/usr/include/i386-linux-gnu/bits/byteswap.h:
-
-/usr/include/i386-linux-gnu/sys/types.h:
-
-/usr/include/time.h:
-
-/usr/include/i386-linux-gnu/sys/select.h:
-
-/usr/include/i386-linux-gnu/bits/select.h:
-
-/usr/include/i386-linux-gnu/bits/sigset.h:
-
-/usr/include/i386-linux-gnu/bits/time.h:
-
-/usr/include/i386-linux-gnu/sys/sysmacros.h:
-
-/usr/include/i386-linux-gnu/bits/pthreadtypes.h:
-
-/usr/include/alloca.h:
-
-/usr/include/i386-linux-gnu/bits/stdlib.h:
-
-/usr/include/c++/4.6/map:
-
-/usr/include/c++/4.6/bits/stl_tree.h:
-
-/usr/include/c++/4.6/bits/stl_algobase.h:
-
-/usr/include/c++/4.6/bits/functexcept.h:
-
-/usr/include/c++/4.6/bits/exception_defines.h:
-
-/usr/include/c++/4.6/ext/numeric_traits.h:
-
-/usr/include/c++/4.6/bits/stl_pair.h:
-
-/usr/include/c++/4.6/bits/move.h:
-
-/usr/include/c++/4.6/bits/concept_check.h:
-
-/usr/include/c++/4.6/bits/stl_iterator_base_types.h:
-
-/usr/include/c++/4.6/bits/stl_iterator_base_funcs.h:
-
-/usr/include/c++/4.6/bits/stl_iterator.h:
-
-/usr/include/c++/4.6/debug/debug.h:
-
-/usr/include/c++/4.6/bits/allocator.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/c++allocator.h:
-
-/usr/include/c++/4.6/ext/new_allocator.h:
-
-/usr/include/c++/4.6/new:
-
-/usr/include/c++/4.6/exception:
-
-/usr/include/c++/4.6/bits/stl_function.h:
-
-/usr/include/c++/4.6/backward/binders.h:
-
-/usr/include/c++/4.6/bits/stl_map.h:
-
-/usr/include/c++/4.6/initializer_list:
-
-/usr/include/c++/4.6/bits/stl_multimap.h:
-
-/usr/include/c++/4.6/bits/range_access.h:
-
-/usr/include/c++/4.6/complex:
-
-/usr/include/c++/4.6/sstream:
-
-/usr/include/c++/4.6/istream:
-
-/usr/include/c++/4.6/ios:
-
-/usr/include/c++/4.6/iosfwd:
-
-/usr/include/c++/4.6/bits/stringfwd.h:
-
-/usr/include/c++/4.6/bits/postypes.h:
-
-/usr/include/c++/4.6/cwchar:
-
-/usr/include/i386-linux-gnu/bits/wchar2.h:
-
-/usr/include/c++/4.6/bits/char_traits.h:
-
-/usr/include/c++/4.6/bits/localefwd.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/c++locale.h:
-
-/usr/include/c++/4.6/clocale:
-
-/usr/include/locale.h:
-
-/usr/include/i386-linux-gnu/bits/locale.h:
-
-/usr/include/c++/4.6/cctype:
-
-/usr/include/ctype.h:
-
-/usr/include/c++/4.6/bits/ios_base.h:
-
-/usr/include/c++/4.6/ext/atomicity.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/gthr.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/gthr-default.h:
-
-/usr/include/pthread.h:
-
-/usr/include/sched.h:
-
-/usr/include/i386-linux-gnu/bits/sched.h:
-
-/usr/include/i386-linux-gnu/bits/setjmp.h:
-
-/usr/include/unistd.h:
-
-/usr/include/i386-linux-gnu/bits/posix_opt.h:
-
-/usr/include/i386-linux-gnu/bits/environments.h:
-
-/usr/include/i386-linux-gnu/bits/confname.h:
-
-/usr/include/getopt.h:
-
-/usr/include/i386-linux-gnu/bits/unistd.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/atomic_word.h:
-
-/usr/include/c++/4.6/bits/locale_classes.h:
-
-/usr/include/c++/4.6/string:
-
-/usr/include/c++/4.6/bits/ostream_insert.h:
-
-/usr/include/c++/4.6/bits/cxxabi_forced.h:
-
-/usr/include/c++/4.6/bits/basic_string.h:
-
-/usr/include/c++/4.6/bits/basic_string.tcc:
-
-/usr/include/c++/4.6/bits/locale_classes.tcc:
-
-/usr/include/c++/4.6/streambuf:
-
-/usr/include/c++/4.6/bits/streambuf.tcc:
-
-/usr/include/c++/4.6/bits/basic_ios.h:
-
-/usr/include/c++/4.6/bits/locale_facets.h:
-
-/usr/include/c++/4.6/cwctype:
-
-/usr/include/wctype.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/ctype_base.h:
-
-/usr/include/c++/4.6/bits/streambuf_iterator.h:
-
-/usr/include/c++/4.6/i686-linux-gnu/./bits/ctype_inline.h:
-
-/usr/include/c++/4.6/bits/locale_facets.tcc:
-
-/usr/include/c++/4.6/bits/basic_ios.tcc:
-
-/usr/include/c++/4.6/ostream:
-
-/usr/include/c++/4.6/bits/ostream.tcc:
-
-/usr/include/c++/4.6/bits/istream.tcc:
-
-/usr/include/c++/4.6/bits/sstream.tcc:
-
-/usr/include/c++/4.6/vector:
-
-/usr/include/c++/4.6/bits/stl_construct.h:
-
-/usr/include/c++/4.6/bits/stl_uninitialized.h:
-
-/usr/include/c++/4.6/bits/stl_vector.h:
-
-/usr/include/c++/4.6/bits/stl_bvector.h:
-
-/usr/include/c++/4.6/bits/vector.tcc:
-
-calf/modules_limit.h:
-
-calf/biquad.h:
-
-calf/inertia.h:
-
-calf/audio_fx.h:
-
-calf/delay.h:
-
-calf/buffer.h:
-
-calf/onepole.h:
-
-calf/fixed_point.h:
-
-calf/giface.h:
-
-calf/metadata.h:
-
-calf/plugin_tools.h:
-
-calf/vumeter.h:
diff --git a/src/audio_fx.cpp b/src/audio_fx.cpp
index d50776b..78ec955 100644
--- a/src/audio_fx.cpp
+++ b/src/audio_fx.cpp
@@ -352,6 +352,7 @@ tap_distortion::tap_distortion()
     srate = 0;
     meter = 0.f;
     prev_med = prev_out = 0.f;
+    drive_old = blend_old = -1.f;
 }
 
 void tap_distortion::activate()
diff --git a/src/calf/delay.h b/src/calf/delay.h
index 4fd37a5..791b8f8 100644
--- a/src/calf/delay.h
+++ b/src/calf/delay.h
@@ -92,7 +92,7 @@ struct simple_delay {
      */
     template<class U>
     inline void get_interp(U &odata, int delay, float udelay) {
-//        assert(delay >= 0 && delay < N-1);
+        assert(delay >= 0 && delay <= N-1);
         int ppos = wrap_around<N>(pos + N - delay);
         int pppos = wrap_around<N>(ppos + N - 1);
         odata = lerp(data[ppos], data[pppos], udelay);
diff --git a/src/calf/modules.h b/src/calf/modules.h
index dfeade3..9818b8e 100644
--- a/src/calf/modules.h
+++ b/src/calf/modules.h
@@ -195,6 +195,7 @@ public:
     : filter_module_with_inertia<dsp::biquad_filter_module, filter_metadata>(ins, outs, params)
     {
         last_generation = 0;
+        old_mode = old_resonance = old_cutoff = -1;
     }
     void params_changed()
     { 
diff --git a/src/modules_comp.cpp b/src/modules_comp.cpp
index 4f86382..0a0d8ab 100644
--- a/src/modules_comp.cpp
+++ b/src/modules_comp.cpp
@@ -50,6 +50,12 @@ multibandcompressor_audio_module::multibandcompressor_audio_module()
     meter_inR  = 0.f;
     meter_outL = 0.f;
     meter_outR = 0.f;
+    for(int i = 0; i < strips - 1; i ++) {
+        freq_old[i] = -1;
+        sep_old[i] = -1;
+        q_old[i] = -1;
+    }
+    mode_old = -1;
 }
 
 void multibandcompressor_audio_module::activate()
@@ -526,6 +532,10 @@ sidechaincompressor_audio_module::sidechaincompressor_audio_module()
     f2_freq_old1  = 0.f;
     f1_level_old1 = 0.f;
     f2_level_old1 = 0.f;
+    f1_freq_old  = 0.f;
+    f2_freq_old  = 0.f;
+    f1_level_old = 0.f;
+    f2_level_old = 0.f;
     sc_mode_old1  = WIDEBAND;
     meters.reset();
 }
@@ -899,6 +909,13 @@ deesser_audio_module::deesser_audio_module()
     f1_level_old1 = 0.f;
     f2_level_old1 = 0.f;
     f2_q_old1     = 0.f;
+    f1_freq_old  = 0.f;
+    f2_freq_old  = 0.f;
+    f1_level_old = 0.f;
+    f2_level_old = 0.f;
+    f2_q_old     = 0.f;
+    detected_led = 0;
+    clip_led     = 0;
 }
 
 void deesser_audio_module::activate()
@@ -1635,6 +1652,17 @@ gain_reduction_audio_module::gain_reduction_audio_module()
     old_detection   = 0.f;
     old_bypass      = 0.f;
     old_mute        = 0.f;
+    linSlope        = 0.f;
+    attack          = 0.f;
+    release         = 0.f;
+    detection       = -1;
+    stereo_link     = -1;
+    threshold       = -1;
+    ratio           = -1;
+    knee            = -1;
+    makeup          = -1;
+    bypass          = -1;
+    mute            = -1;
 }
 
 void gain_reduction_audio_module::activate()
@@ -1647,7 +1675,7 @@ void gain_reduction_audio_module::activate()
     l = r = 0.f;
     float byp = bypass;
     bypass = 0.0;
-    process(l, r);
+    process(l, r, 0, 0);
     bypass = byp;
 }
 
@@ -1680,8 +1708,8 @@ void gain_reduction_audio_module::process(float &left, float &right, const float
     if(bypass < 0.5f) {
         // this routine is mainly copied from thor's compressor module
         // greatest sounding compressor I've heard!
-        bool rms = detection == 0;
-        bool average = stereo_link == 0;
+        bool rms = (detection == 0);
+        bool average = (stereo_link == 0);
         float attack_coeff = std::min(1.f, 1.f / (attack * srate / 4000.f));
         float release_coeff = std::min(1.f, 1.f / (release * srate / 4000.f));
         
@@ -1797,7 +1825,7 @@ bool gain_reduction_audio_module::get_dot(int subindex, float &x, float &y, int
         if(bypass > 0.5f or mute > 0.f) {
             return false;
         } else {
-            bool rms = detection == 0;
+            bool rms = (detection == 0);
             float det = rms ? sqrt(detected) : detected;
             x = 0.5 + 0.5 * dB_grid(det);
             y = dB_grid(bypass > 0.5f or mute > 0.f ? det : output_level(det));
@@ -1861,7 +1889,15 @@ expander_audio_module::expander_audio_module()
     is_active       = false;
     srate           = 0;
     last_generation = 0;
-    
+    range     = -1.f;
+    threshold = -1.f;
+    ratio     = -1.f;
+    knee      = -1.f;
+    makeup    = -1.f;
+    detection = -1.f;
+    bypass    = -1.f;
+    mute      = -1.f;
+    stereo_link = -1.f;
     old_range     = 0.f;
     old_threshold = 0.f;
     old_ratio     = 0.f;
@@ -1872,6 +1908,8 @@ expander_audio_module::expander_audio_module()
     old_mute      = 0.f;
     old_trigger   = 0.f;
     old_stereo_link = 0.f;
+    linSlope      = -1;
+    linKneeStop   = 0;
 }
 
 void expander_audio_module::activate()
@@ -1895,7 +1933,7 @@ void expander_audio_module::deactivate()
 
 void expander_audio_module::update_curve()
 {
-    bool rms = detection == 0;
+    bool rms = (detection == 0);
     float linThreshold = threshold;
     if (rms)
         linThreshold = linThreshold * linThreshold;
@@ -1921,8 +1959,8 @@ void expander_audio_module::process(float &left, float &right, const float *det_
     }
     if(bypass < 0.5f) {
         // this routine is mainly copied from Damien's expander module based on Thor's compressor
-        bool rms = detection == 0;
-        bool average = stereo_link == 0;
+        bool rms = (detection == 0);
+        bool average = (stereo_link == 0);
         float absample = average ? (fabs(*det_left) + fabs(*det_right)) * 0.5f : std::max(fabs(*det_left), fabs(*det_right));
         if(rms) absample *= absample;
             
@@ -1940,7 +1978,7 @@ void expander_audio_module::process(float &left, float &right, const float *det_
 }
 
 float expander_audio_module::output_level(float slope) const {
-    bool rms = detection == 0;
+    bool rms = (detection == 0);
     return slope * output_gain(rms ? slope*slope : slope, rms) * makeup;
 }
 
@@ -2031,7 +2069,7 @@ bool expander_audio_module::get_dot(int subindex, float &x, float &y, int &size,
         if(bypass > 0.5f or mute > 0.f) {
             return false;
         } else {
-            bool rms = detection == 0;
+            bool rms = (detection == 0);
             float det = rms ? sqrt(detected) : detected;
             x = 0.5 + 0.5 * dB_grid(det);
             y = dB_grid(bypass > 0.5f or mute > 0.f ? det : output_level(det));
diff --git a/src/modules_dist.cpp b/src/modules_dist.cpp
index 049e948..559e785 100644
--- a/src/modules_dist.cpp
+++ b/src/modules_dist.cpp
@@ -37,6 +37,12 @@ saturator_audio_module::saturator_audio_module()
     is_active = false;
     srate = 0;
     meter_drive = 0.f;
+    lp_pre_freq_old = -1;
+    hp_pre_freq_old = -1;
+    lp_post_freq_old = -1;
+    hp_post_freq_old = -1;
+    p_freq_old = -1;
+    p_level_old = -1;
 }
 
 void saturator_audio_module::activate()
diff --git a/src/modules_limit.cpp b/src/modules_limit.cpp
index f55cc07..9126cee 100644
--- a/src/modules_limit.cpp
+++ b/src/modules_limit.cpp
@@ -210,6 +210,12 @@ multibandlimiter_audio_module::multibandlimiter_audio_module()
     buffer_size = 0;
     overall_buffer_size = 0;
     _sanitize = false;
+    for(int i = 0; i < strips - 1; i ++) {
+        freq_old[i] = -1;
+        sep_old[i] = -1;
+        q_old[i] = -1;
+    }
+    mode_old = 0;
 }
 
 void multibandlimiter_audio_module::activate()
diff --git a/src/monosynth.cpp b/src/monosynth.cpp
index 5398d8f..5156a0c 100644
--- a/src/monosynth.cpp
+++ b/src/monosynth.cpp
@@ -51,6 +51,12 @@ void monosynth_audio_module::activate() {
     last_pwshift1 = last_pwshift2 = 0;
     last_stretch1 = 65536;
     queue_note_on_and_off = false;
+    prev_wave1 = -1;
+    prev_wave2 = -1;
+    wave1 = -1;
+    wave2 = -1;
+    queue_note_on = 0;
+    last_filter_type = -1;
 }
 
 waveform_family<MONOSYNTH_WAVE_BITS> *monosynth_audio_module::waves;

-- 
calf audio plugins packaging



More information about the pkg-multimedia-commits mailing list