gre025552:octave-sound pdiribarne$ valgrind --dsymutil=yes octave ==38074== Memcheck, a memory error detector ==38074== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==38074== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info ==38074== Command: octave ==38074== ==38074== Warning: ignored attempt to set SIGUSR2 handler in sigaction(); ==38074== the SIGUSR2 signal is used internally by Valgrind GNU Octave, version 3.6.3 Copyright (C) 2012 John W. Eaton and others. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, type `warranty'. Octave was configured for "x86_64-apple-darwin". Additional information about Octave is available at http://www.octave.org. Please contribute if you find this software useful. For more information, visit http://www.octave.org/help-wanted.html Read http://www.octave.org/bugs.html to learn how to submit bug reports. For information about changes from previous versions, type `news'. Executing startup script (/Users/pdiribarne/Documents/Logiciels/Octave3.6/OctaveStartup) ... done! octave:1> recorder = audiorecorder (44100, 16, 2); --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_audiorecorder__.oct" warning: no debug symbols in executable (-arch x86_64) octave:2> record (recorder, 2);--38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_record__.oct" warning: no debug symbols in executable (-arch x86_64) octave:3> player = audioplayer (recorder);--38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_getaudiodata__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_nbits__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_sample_number__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_id__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_channels__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_isrecording__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_fs__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_total_samples__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_tag__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__recorder_get_userdata__.oct" warning: no debug symbols in executable (-arch x86_64) --38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__player_audioplayer__.oct" warning: no debug symbols in executable (-arch x86_64) octave:4> play (player)--38074-- run: /usr/bin/dsymutil "/Users/pdiribarne/dev/octave-sound/__player_play__.oct" warning: no debug symbols in executable (-arch x86_64) octave:5> ==38074== Thread 3: ==38074== Invalid read of size 8 ==38074== at 0x9750570: portaudio_callback(void const*, void*, unsigned long, PaStreamCallbackTimeInfo const*, unsigned long, void*) (in /Users/pdiribarne/dev/octave-sound/__player_play__.oct) ==38074== by 0x79AE5E2: AdaptingOutputOnlyProcess (in /sw/lib/libportaudio.2.19.0.dylib) ==38074== by 0x79AD751: PaUtil_EndBufferProcessing (in /sw/lib/libportaudio.2.19.0.dylib) ==38074== by 0x79B30EC: AudioIOProc (in /sw/lib/libportaudio.2.19.0.dylib) ==38074== by 0x70007F6E: AUConverterBase::RenderBus(unsigned int&, AudioTimeStamp const&, unsigned int, unsigned int) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x70007543: AUBase::DoRenderBus(unsigned int&, AudioTimeStamp const&, unsigned int, AUOutputElement*, unsigned int, AudioBufferList&) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x700049CC: AUBase::DoRender(unsigned int&, AudioTimeStamp const&, unsigned int, unsigned int, AudioBufferList&) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x7000BC12: AUHAL::AUIOProc(unsigned int, AudioTimeStamp const*, AudioBufferList const*, AudioTimeStamp const*, AudioBufferList*, AudioTimeStamp const*, void*) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x79EC9F9: HALC_ProxyIOContext::IOWorkLoop() (in /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio) ==38074== by 0x79EC150: HALC_ProxyIOContext::IOThreadEntry(void*) (in /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio) ==38074== by 0x79EC00B: HALB_IOThread::Entry(void*) (in /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio) ==38074== by 0x2E458BE: _pthread_start (in /usr/lib/system/libsystem_c.dylib) ==38074== Address 0x106c19a40 is 0 bytes after a block of size 708,608 alloc'd ==38074== at 0xD713: malloc (vg_replace_malloc.c:274) ==38074== by 0x234425C: operator new(unsigned long) (in /sw/lib/gcc4.7/lib/libstdc++.6.dylib) ==38074== by 0x1075385: Array::index(idx_vector const&, idx_vector const&) const (in /sw/lib/octave/3.6.3/liboctave.1.dylib) ==38074== by 0x138A0C6: Matrix::row(int) const (in /sw/lib/octave/3.6.3/liboctave.1.dylib) ==38074== by 0x9738DCD: audioplayer::set_y(octave_value) (in /Users/pdiribarne/dev/octave-sound/__player_audioplayer__.oct) ==38074== by 0x973759C: F__player_audioplayer__(octave_value_list const&, int) (in /Users/pdiribarne/dev/octave-sound/__player_audioplayer__.oct) ==38074== by 0x48AFBD: octave_builtin::do_multi_index_op(int, octave_value_list const&, std::list > const*) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x48AB57: octave_builtin::subsref(std::string const&, std::list > const&, int, std::list > const*) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x48A9F3: octave_builtin::subsref(std::string const&, std::list > const&, int) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0xAA4AB: octave_builtin::subsref(std::string const&, std::list > const&) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x542F28: octave_value::subsref(std::string const&, std::list > const&, int) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x542FE7: octave_value::subsref(std::string const&, std::list > const&, int, std::list > const*) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== ==38074== Invalid read of size 8 ==38074== at 0x9750597: portaudio_callback(void const*, void*, unsigned long, PaStreamCallbackTimeInfo const*, unsigned long, void*) (in /Users/pdiribarne/dev/octave-sound/__player_play__.oct) ==38074== by 0x79AE5E2: AdaptingOutputOnlyProcess (in /sw/lib/libportaudio.2.19.0.dylib) ==38074== by 0x79AD751: PaUtil_EndBufferProcessing (in /sw/lib/libportaudio.2.19.0.dylib) ==38074== by 0x79B30EC: AudioIOProc (in /sw/lib/libportaudio.2.19.0.dylib) ==38074== by 0x70007F6E: AUConverterBase::RenderBus(unsigned int&, AudioTimeStamp const&, unsigned int, unsigned int) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x70007543: AUBase::DoRenderBus(unsigned int&, AudioTimeStamp const&, unsigned int, AUOutputElement*, unsigned int, AudioBufferList&) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x700049CC: AUBase::DoRender(unsigned int&, AudioTimeStamp const&, unsigned int, unsigned int, AudioBufferList&) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x7000BC12: AUHAL::AUIOProc(unsigned int, AudioTimeStamp const*, AudioBufferList const*, AudioTimeStamp const*, AudioBufferList*, AudioTimeStamp const*, void*) (in /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio) ==38074== by 0x79EC9F9: HALC_ProxyIOContext::IOWorkLoop() (in /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio) ==38074== by 0x79EC150: HALC_ProxyIOContext::IOThreadEntry(void*) (in /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio) ==38074== by 0x79EC00B: HALB_IOThread::Entry(void*) (in /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio) ==38074== by 0x2E458BE: _pthread_start (in /usr/lib/system/libsystem_c.dylib) ==38074== Address 0x10708c0c0 is 0 bytes after a block of size 708,608 alloc'd ==38074== at 0xD713: malloc (vg_replace_malloc.c:274) ==38074== by 0x234425C: operator new(unsigned long) (in /sw/lib/gcc4.7/lib/libstdc++.6.dylib) ==38074== by 0x1075385: Array::index(idx_vector const&, idx_vector const&) const (in /sw/lib/octave/3.6.3/liboctave.1.dylib) ==38074== by 0x138A0C6: Matrix::row(int) const (in /sw/lib/octave/3.6.3/liboctave.1.dylib) ==38074== by 0x9738E06: audioplayer::set_y(octave_value) (in /Users/pdiribarne/dev/octave-sound/__player_audioplayer__.oct) ==38074== by 0x973759C: F__player_audioplayer__(octave_value_list const&, int) (in /Users/pdiribarne/dev/octave-sound/__player_audioplayer__.oct) ==38074== by 0x48AFBD: octave_builtin::do_multi_index_op(int, octave_value_list const&, std::list > const*) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x48AB57: octave_builtin::subsref(std::string const&, std::list > const&, int, std::list > const*) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x48A9F3: octave_builtin::subsref(std::string const&, std::list > const&, int) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0xAA4AB: octave_builtin::subsref(std::string const&, std::list > const&) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x542F28: octave_value::subsref(std::string const&, std::list > const&, int) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== by 0x542FE7: octave_value::subsref(std::string const&, std::list > const&, int, std::list > const*) (in /sw/lib/octave/3.6.3/liboctinterp.1.dylib) ==38074== octave:5> quit ==38074== ==38074== HEAP SUMMARY: ==38074== in use at exit: 3,989,857 bytes in 27,865 blocks ==38074== total heap usage: 1,825,590 allocs, 1,797,725 frees, 182,406,421 bytes allocated ==38074== ==38074== LEAK SUMMARY: ==38074== definitely lost: 327,406 bytes in 1,529 blocks ==38074== indirectly lost: 50 bytes in 3 blocks ==38074== possibly lost: 400,063 bytes in 9,025 blocks ==38074== still reachable: 3,262,338 bytes in 17,308 blocks ==38074== suppressed: 0 bytes in 0 blocks ==38074== Rerun with --leak-check=full to see details of leaked memory ==38074== ==38074== For counts of detected and suppressed errors, rerun with: -v ==38074== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)