I reinstalled again with your latest diff (thanks).
I see this problem, which I believe was not happening
with the old port:


$ fluidsynth  /home/hans/soundfont/FluidR3_GM.sf2  
FluidSynth version 1.1.5
Copyright (C) 2000-2011 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

Type 'help' for help topics.

> settings
audio.driver                sndio
audio.file.endian           auto
audio.file.format           s16
audio.file.name             fluidsynth.wav
audio.file.type             auto
audio.input-channels        0
audio.jack.autoconnect      True
audio.jack.id               fluidsynth
audio.jack.multi            False
audio.jack.server           
audio.output-channels       2
audio.period-size           64
audio.periods               16
audio.realtime-prio         60
audio.sample-format         16bits
audio.sndio.device          [*]Bus error (core dumped) 


The core dump only happens after about 30 seconds of waiting
with cursor at the [*] position (the [*] is not part of the
output, obviously).

This happens with sndiod not running, with default sndiod running
(that is, with sndiod_flags=""), or with any other sndiod_flags
I happened to use.

Putting a silly debug printf()'s inside fluid_settings_get()
in fluid_settings.c, I see that fluidsynth is calling it at least once
for each of the settings on start (obviously), but more than once for
some of them (audio.file.type for example); and that does not crash.
The crash only happens when I call 'settings' explicitly.

Please see the 'log' below, and
- note that fluidsynth does get past 'audio.sndio.device'
  (where the crash seems to happen)
- note the strange unprintable value of 'audio.sndio.device'.
  (So maybe it is already processing and printing further settings,
  but the display does not reveal that?).
- note the error message at the end:
  fluidsynth in free(): error: chunk is already free 0x203164f70
  which I didn't see displayed before
- it's an 'abort trap now', not a 'buss error'.

Apparetly I don't have enough knowledge of the code base
to further investgate it now in actual code.  Please let
me know if there is anything I should test.

        Thank you for your time

                Jan





FluidSynth version 1.1.5
Copyright (C) 2000-2011 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

getting synth.verbose
getting synth.dump
getting synth.reverb.active
getting synth.chorus.active
getting synth.ladspa.active
getting midi.portname
getting synth.polyphony
getting synth.midi-channels
getting synth.gain
getting synth.audio-channels
getting synth.audio-groups
getting synth.effects-channels
getting synth.sample-rate
getting synth.device-id
getting synth.cpu-cores
getting synth.min-note-length
getting synth.threadsafe-api
getting synth.parallel-render
getting synth.overflow.percussion
getting synth.overflow.sustained
getting synth.overflow.released
getting synth.overflow.age
getting synth.overflow.volume
getting synth.midi-bank-select
getting synth.midi-bank-select
getting synth.midi-bank-select
getting synth.midi-bank-select
getting synth.midi-bank-select
getting shell.prompt
getting shell.port
getting player.timing-source
getting player.timing-source
getting player.timing-source
getting player.reset-synth
getting audio.file.name
getting audio.file.type
getting audio.file.format
getting audio.file.endian
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.type
getting audio.file.format
getting audio.file.format
getting audio.file.format
getting audio.file.format
getting audio.file.format
getting audio.file.format
getting audio.file.format
getting audio.file.endian
getting audio.file.endian
getting audio.file.endian
getting audio.file.endian
getting audio.sample-format
getting audio.sample-format
getting audio.sample-format
getting audio.output-channels
getting audio.input-channels
getting audio.period-size
getting audio.periods
getting audio.realtime-prio
getting audio.driver
getting audio.driver
getting audio.driver
getting audio.driver
getting audio.sndio.device
getting audio.jack.id
getting audio.jack.multi
getting audio.jack.autoconnect
getting audio.jack.server
getting midi.realtime-prio
getting midi.driver
getting midi.driver
getting midi.driver
getting midi.sndio.device
getting midi.jack.id
getting midi.jack.server
getting synth.audio-groups
getting synth.threadsafe-api
getting synth.reverb.active
getting synth.chorus.active
getting synth.verbose
getting synth.dump
getting synth.polyphony
getting synth.sample-rate
getting synth.midi-channels
getting synth.audio-channels
getting synth.audio-groups
getting synth.effects-channels
getting synth.gain
getting synth.device-id
getting synth.cpu-cores
getting synth.sample-rate
getting synth.gain
getting synth.polyphony
getting synth.device-id
getting synth.overflow.percussion
getting synth.overflow.sustained
getting synth.overflow.released
getting synth.overflow.age
getting synth.overflow.volume
getting synth.parallel-render
getting synth.min-note-length
getting synth.overflow.percussion
getting synth.overflow.released
getting synth.overflow.sustained
getting synth.overflow.volume
getting synth.overflow.age
getting synth.midi-bank-select
getting synth.midi-bank-select
getting audio.driver
getting audio.periods
getting audio.period-size
getting synth.sample-rate
getting audio.sndio.device
getting audio.sample-format
getting synth.midi-channels
getting midi.driver
getting midi.sndio.device
Type 'help' for help topics.

getting shell.prompt
getting shell.prompt
> 
> settings
getting audio.driver
getting audio.file.endian
getting audio.file.format
getting audio.file.name
getting audio.file.type
getting audio.input-channels
getting audio.jack.autoconnect
getting audio.jack.id
getting audio.jack.multi
getting audio.jack.server
getting audio.output-channels
getting audio.period-size
getting audio.periods
getting audio.realtime-prio
getting audio.sample-format
getting audio.sndio.device
getting midi.driver
getting midi.jack.id
getting midi.jack.server
getting midi.portname
getting midi.realtime-prio
getting midi.sndio.device
getting player.reset-synth
getting player.timing-source
getting shell.port
getting shell.prompt
getting synth.audio-channels
getting synth.audio-groups
getting synth.chorus.active
getting synth.cpu-cores
getting synth.device-id
getting synth.dump
getting synth.effects-channels
getting synth.gain
getting synth.ladspa.active
getting synth.midi-bank-select
getting synth.midi-channels
getting synth.min-note-length
getting synth.overflow.age
getting synth.overflow.percussion
getting synth.overflow.released
getting synth.overflow.sustained
getting synth.overflow.volume
getting synth.parallel-render
getting synth.polyphony
getting synth.reverb.active
getting synth.sample-rate
getting synth.threadsafe-api
getting synth.verbose
getting audio.driver
audio.driver                getting audio.driver
getting audio.driver
sndio
getting audio.file.endian
audio.file.endian           getting audio.file.endian
getting audio.file.endian
auto
getting audio.file.format
audio.file.format           getting audio.file.format
getting audio.file.format
s16
getting audio.file.name
audio.file.name             getting audio.file.name
getting audio.file.name
fluidsynth.wav
getting audio.file.type
audio.file.type             getting audio.file.type
getting audio.file.type
auto
getting audio.input-channels
audio.input-channels        getting audio.input-channels
getting audio.input-channels
getting audio.input-channels
0
getting audio.jack.autoconnect
audio.jack.autoconnect      getting audio.jack.autoconnect
getting audio.jack.autoconnect
getting audio.jack.autoconnect
True
getting audio.jack.id
audio.jack.id               getting audio.jack.id
getting audio.jack.id
fluidsynth
getting audio.jack.multi
audio.jack.multi            getting audio.jack.multi
getting audio.jack.multi
getting audio.jack.multi
False
getting audio.jack.server
audio.jack.server           getting audio.jack.server
getting audio.jack.server

getting audio.output-channels
audio.output-channels       getting audio.output-channels
getting audio.output-channels
getting audio.output-channels
2
getting audio.period-size
audio.period-size           getting audio.period-size
getting audio.period-size
getting audio.period-size
64
getting audio.periods
audio.periods               getting audio.periods
getting audio.periods
getting audio.periods
16
getting audio.realtime-prio
audio.realtime-prio         getting audio.realtime-prio
getting audio.realtime-prio
getting audio.realtime-prio
60
getting audio.sample-format
audio.sample-format         getting audio.sample-format
getting audio.sample-format
16bits
getting audio.sndio.device
audio.sndio.device          getting audio.sndio.device
getting audio.sndio.device
@œ

getting midi.driver
midi.driver                 getting midi.driver
getting midi.driver
sndio
getting midi.jack.id
midi.jack.id                getting midi.jack.id
getting midi.jack.id
fluidsynth-midi
getting midi.jack.server
midi.jack.server            getting midi.jack.server
getting midi.jack.server

getting midi.portname
midi.portname               getting midi.portname
getting midi.portname

getting midi.realtime-prio
midi.realtime-prio          getting midi.realtime-prio
getting midi.realtime-prio
getting midi.realtime-prio
50
getting midi.sndio.device
midi.sndio.device           getting midi.sndio.device
getting midi.sndio.device
@—

getting player.reset-synth
player.reset-synth          getting player.reset-synth
getting player.reset-synth
getting player.reset-synth
True
getting player.timing-source
player.timing-source        getting player.timing-source
getting player.timing-source
sample
getting shell.port
shell.port                  getting shell.port
getting shell.port
getting shell.port
9800
getting shell.prompt
shell.prompt                getting shell.prompt
getting shell.prompt
> 
getting synth.audio-channels
synth.audio-channels        getting synth.audio-channels
getting synth.audio-channels
getting synth.audio-channels
1
getting synth.audio-groups
synth.audio-groups          getting synth.audio-groups
getting synth.audio-groups
getting synth.audio-groups
1
getting synth.chorus.active
synth.chorus.active         getting synth.chorus.active
getting synth.chorus.active
getting synth.chorus.active
True
getting synth.cpu-cores
synth.cpu-cores             getting synth.cpu-cores
getting synth.cpu-cores
getting synth.cpu-cores
1
getting synth.device-id
synth.device-id             getting synth.device-id
getting synth.device-id
getting synth.device-id
0
getting synth.dump
synth.dump                  getting synth.dump
getting synth.dump
getting synth.dump
False
getting synth.effects-channels
synth.effects-channels      getting synth.effects-channels
getting synth.effects-channels
getting synth.effects-channels
2
getting synth.gain
synth.gain                  getting synth.gain
getting synth.gain
0.200
getting synth.ladspa.active
synth.ladspa.active         getting synth.ladspa.active
getting synth.ladspa.active
getting synth.ladspa.active
False
getting synth.midi-bank-select
synth.midi-bank-select      getting synth.midi-bank-select
getting synth.midi-bank-select
gs
getting synth.midi-channels
synth.midi-channels         getting synth.midi-channels
getting synth.midi-channels
getting synth.midi-channels
16
getting synth.min-note-length
synth.min-note-length       getting synth.min-note-length
getting synth.min-note-length
getting synth.min-note-length
10
getting synth.overflow.age
synth.overflow.age          getting synth.overflow.age
getting synth.overflow.age
1000.000
getting synth.overflow.percussion
synth.overflow.percussion   getting synth.overflow.percussion
getting synth.overflow.percussion
4000.000
getting synth.overflow.released
synth.overflow.released     getting synth.overflow.released
getting synth.overflow.released
-2000.000
getting synth.overflow.sustained
synth.overflow.sustained    getting synth.overflow.sustained
getting synth.overflow.sustained
-1000.000
getting synth.overflow.volume
synth.overflow.volume       getting synth.overflow.volume
getting synth.overflow.volume
500.000
getting synth.parallel-render
synth.parallel-render       getting synth.parallel-render
getting synth.parallel-render
getting synth.parallel-render
True
getting synth.polyphony
synth.polyphony             getting synth.polyphony
getting synth.polyphony
getting synth.polyphony
256
getting synth.reverb.active
synth.reverb.active         getting synth.reverb.active
getting synth.reverb.active
getting synth.reverb.active
True
getting synth.sample-rate
synth.sample-rate           getting synth.sample-rate
getting synth.sample-rate
44100.000
getting synth.threadsafe-api
synth.threadsafe-api        getting synth.threadsafe-api
getting synth.threadsafe-api
getting synth.threadsafe-api
True
getting synth.verbose
synth.verbose               getting synth.verbose
getting synth.verbose
getting synth.verbose
False
fluidsynth in free(): error: chunk is already free 0x203164f70
Abort trap (core dumped) 

Reply via email to