log

age author description
Fri, 22 Jan 2016 12:46:42 +0000 Chris Cannam Don't need ResizeableBitset, vector<bool> is already a compact format 3.0-integration
Fri, 22 Jan 2016 12:46:19 +0000 Chris Cannam Fix one-block rounding error when zoomed a long way out, visible as an offset toward the end of very long audio files 3.0-integration
Fri, 22 Jan 2016 09:52:30 +0000 Chris Cannam Adjust locking when filling range cache in background thread, so as to spend less time waiting on locks 3.0-integration
Fri, 22 Jan 2016 09:52:08 +0000 Chris Cannam Debug bits 3.0-integration
Tue, 19 Jan 2016 12:32:30 +0000 Chris Cannam Show warning to the user when plugin population has problems 3.0-integration
Mon, 11 Jan 2016 14:18:56 +0000 Chris Cannam Check for plugin loadability before trying to load in the main process (POSIX only so far) 3.0-integration
Fri, 08 Jan 2016 15:39:12 +0000 Chris Cannam Pull out candidate list 3.0-integration
Wed, 18 Nov 2015 12:08:33 +0000 Chris Cannam Merge from default branch 3.0-integration
Wed, 04 Nov 2015 14:18:22 +0000 Chris Cannam OSX build stuff
Wed, 04 Nov 2015 12:06:12 +0000 Chris Cannam Write Track in RDF only if title/artist metadata present, not simply on the basis of a TrackMetadata object existing
Wed, 04 Nov 2015 10:07:29 +0000 Chris Cannam Update JAMS output to JAMS v0.2.0. We now (for the first time?!) write actual JAMS schema-compliant output when possible, though it isn't possible for many types of plugin. The output for all tested combinations of transforms is valid JSON even where it isn't schema-compliant.
Tue, 03 Nov 2015 14:31:58 +0000 Chris Cannam Add & test the digits option in the CSV file writer
Tue, 03 Nov 2015 12:41:15 +0000 Chris Cannam Merge
Tue, 03 Nov 2015 11:34:44 +0000 Chris Cannam Debug outputs
Tue, 03 Nov 2015 11:34:23 +0000 Chris Cannam Handle unknown type
Tue, 03 Nov 2015 11:34:07 +0000 Chris Cannam Make it possible to report that a transform is of unknown type (e.g. invalid transform id, user mixed up filename and transform id, etc)
Thu, 22 Oct 2015 11:53:06 +0100 Chris Cannam Build fix
Tue, 20 Oct 2015 12:54:06 +0100 Chris Cannam Return maximum through getNormalizedMagnitudesAt to avoid having to make more than one call tony-2.0-integration
Wed, 14 Oct 2015 10:19:48 +0100 Chris Cannam Merge from branch "3.0-integration" tony-2.0-integration
Wed, 14 Oct 2015 10:12:14 +0100 Chris Cannam Merge from branch "tony-2.0-integration" 3.0-integration
Tue, 13 Oct 2015 14:26:40 +0100 Chris Cannam Adjust model update during recording or writing a new wave file. Formerly we were using the model's completion percentage to indicate write proportion and completion -- that's not a good idea because some layers will reasonably avoid rendering at all until a model reaches 100% completion (it's supposed to report only progress on the initial model generation, and the model shouldn't change during completion updates). tony-2.0-integration
Mon, 12 Oct 2015 15:06:15 +0100 Chris Cannam Fix lock contention in FFTapi 3.0-integration
Mon, 12 Oct 2015 15:06:15 +0100 Chris Cannam Fix lock contention in FFTapi tony-2.0-integration
Mon, 12 Oct 2015 13:38:24 +0100 Chris Cannam Merge from the default branch tony-2.0-integration
Tue, 01 Sep 2015 17:05:32 +0100 Chris Cannam Add mandatory option --json-format to JSON feature writer, in preparation for supporting multiple JSON formats (perhaps) in future
Tue, 01 Sep 2015 15:51:07 +0100 Chris Cannam Simple MIDI writer test
Thu, 20 Aug 2015 15:33:13 +0100 Chris Cannam Back out Matthias's e22bfe8ca248 in the hope that my (earlier but on a different branch, and now merged) fix 882d448c8a6d will do the right thing tony-2.0-integration
Thu, 20 Aug 2015 14:54:21 +0100 Chris Cannam Merge through to branch for Tony 2.0 tony-2.0-integration
Thu, 20 Aug 2015 13:33:46 +0100 Chris Cannam Merge from default branch 3.0-integration
Thu, 20 Aug 2015 13:15:19 +0100 Chris Cannam Merge from branch recording 3.0-integration
Thu, 20 Aug 2015 12:22:17 +0100 Chris Cannam Fix reloading session with recorded audio recording
Wed, 19 Aug 2015 17:03:31 +0100 Chris Cannam Make WritableWaveFileModel a true WaveFileModel (and ReadOnlyWaveFileModel the other sort of it). Enable recording from an empty session using that. recording
Wed, 19 Aug 2015 16:36:21 +0100 Chris Cannam Remove unused dependency on Rubber Band
Wed, 19 Aug 2015 16:32:46 +0100 Chris Cannam svcore should not depend on rubberband
Fri, 14 Aug 2015 18:16:14 +0100 Matthias Mauch fixes the problem that the last note was not exported to csv tonioni
Tue, 04 Aug 2015 16:39:40 +0100 Chris Cannam Merge from branch bqaudioio 3.0-integration
Tue, 04 Aug 2015 13:27:42 +0100 Chris Cannam Initial work toward switching to bqaudioio library (so as to get I/O, not just O) bqaudioio
Tue, 04 Aug 2015 10:49:24 +0100 Chris Cannam Necessary include 3.0-integration
Tue, 14 Jul 2015 15:04:46 +0100 alo removed imaf sliders imaf_enc
Tue, 07 Jul 2015 17:39:06 +0100 Chris Cannam Merge from default branch 3.0-integration
Fri, 03 Jul 2015 16:09:14 +0100 Chris Cannam Fix assignment of values to regions on import, in case where region model contains duplicate points
Wed, 01 Jul 2015 18:31:28 +0100 Chris Cannam Merge from branch simple-fft-model 3.0-integration
Wed, 07 Jan 2015 17:42:21 +0000 Chris Cannam Merge from default branch simple-fft-model
Wed, 01 Jul 2015 15:53:54 +0100 Chris Cannam Fix a number of warnings in the 32-bit build
Wed, 01 Jul 2015 13:27:03 +0100 Chris Cannam Merge from branch simple-fft-model 3.0-integration
Tue, 30 Jun 2015 10:26:23 +0100 Chris Cannam Merge simple-fft-model
Tue, 30 Jun 2015 10:25:32 +0100 Chris Cannam Build fix simple-fft-model
Fri, 26 Jun 2015 14:08:05 +0100 Chris Cannam Merge from branch normalize_hybrid_option 3.0-integration
Fri, 26 Jun 2015 14:07:25 +0100 Chris Cannam Merge from branch simple-fft-model 3.0-integration
Tue, 16 Jun 2015 20:32:44 +0100 Chris Cannam Two-channel test simple-fft-model
Tue, 16 Jun 2015 20:28:23 +0100 Chris Cannam Fix a cache-related dumbitude simple-fft-model
Mon, 15 Jun 2015 19:32:30 +0100 Chris Cannam Raise this maximum, so longer files can be shown in the overview pane simple-fft-model
Mon, 15 Jun 2015 19:01:44 +0100 Chris Cannam Use in-memory cache for WAV files as well, if appropriate simple-fft-model
Mon, 15 Jun 2015 16:02:58 +0100 Chris Cannam Smooth signal flow through from file to fft model simple-fft-model
Mon, 15 Jun 2015 15:35:57 +0100 Chris Cannam More tests simple-fft-model
Mon, 15 Jun 2015 14:35:37 +0100 Chris Cannam Store temporary audio files in memory if we have plenty of it simple-fft-model
Mon, 15 Jun 2015 12:38:50 +0100 Chris Cannam Tidy simple-fft-model
Mon, 15 Jun 2015 12:19:47 +0100 Chris Cannam Rework audio file reader API to prefer using std containers simple-fft-model
Sat, 13 Jun 2015 08:47:05 +0100 Chris Cannam Fix to fft cache simple-fft-model
Fri, 12 Jun 2015 19:18:56 +0100 Chris Cannam A small cache for source samples simple-fft-model
Fri, 12 Jun 2015 18:50:52 +0100 Chris Cannam Make a small cache of recently-used columns simple-fft-model
Fri, 12 Jun 2015 18:20:09 +0100 Chris Cannam Normalization function simple-fft-model
Fri, 12 Jun 2015 18:08:57 +0100 Chris Cannam Simplest naive FFTModel implementation (+ fill in tests) simple-fft-model
Fri, 12 Jun 2015 14:51:46 +0100 Chris Cannam Gut the old code, but don't replace it yet (so nothing will link yet) simple-fft-model
Fri, 12 Jun 2015 13:46:44 +0100 Chris Cannam More tests simple-fft-model
Fri, 12 Jun 2015 12:41:19 +0100 Chris Cannam Start making the FFT model tests into proper tests
Thu, 11 Jun 2015 09:09:11 +0100 Chris Cannam Tidy
Wed, 10 Jun 2015 17:06:02 +0100 Chris Cannam Tidy dense time-value model API a bit; add first simple unit test for FFT model
Wed, 10 Jun 2015 14:44:09 +0100 Chris Cannam Remove some obsolete unused files
Wed, 10 Jun 2015 13:31:21 +0100 Chris Cannam Fix overflow in width calculation
Wed, 10 Jun 2015 13:14:32 +0100 Chris Cannam Merge
Wed, 10 Jun 2015 13:12:39 +0100 Chris Cannam Merge
Wed, 10 Jun 2015 13:12:29 +0100 Chris Cannam Do not attempt to switch from read-only to read-write mode if an error is pending (may cause mutex deadlock)
Wed, 10 Jun 2015 13:12:06 +0100 Chris Cannam Tighten up error handling
Wed, 10 Jun 2015 13:11:45 +0100 Chris Cannam Emit a signal if transform fails
Wed, 10 Jun 2015 13:10:26 +0100 Chris Cannam Fail upfront if the file is going to be too large. We expect the caller to split up large data sets into several MatrixFiles
Wed, 10 Jun 2015 13:09:14 +0100 Chris Cannam Comment
Wed, 10 Jun 2015 13:08:30 +0100 Chris Cannam Avoid compiler warning
Fri, 05 Jun 2015 10:00:26 +0100 Chris Cannam More optional debug out
Thu, 21 May 2015 16:38:52 +0100 Chris Cannam Merge
Thu, 21 May 2015 16:38:07 +0100 Chris Cannam minor debug thing
Fri, 15 May 2015 09:15:57 +0100 Chris Cannam Fix #1222 CSV export of time-instants layer omits last point
Thu, 14 May 2015 14:04:41 +0100 Chris Cannam Handle case where plugin erroneously returns sample rate 0 for fixed-rate output
Tue, 12 May 2015 16:19:45 +0100 Chris Cannam Fixes to, and tests for, RealTime-to-text methods
Mon, 20 Apr 2015 09:11:34 +0100 Chris Cannam Merge from branch tonioni
Mon, 13 Apr 2015 13:52:05 +0100 Chris Cannam Revert to -Werror in debug only tonioni
Tue, 31 Mar 2015 13:06:29 +0100 Chris Cannam Remove some debug; set some gain values tonioni
Tue, 31 Mar 2015 12:27:56 +0100 Chris Cannam Permit extending nominal end of sparse model tonioni
Tue, 31 Mar 2015 12:12:31 +0100 Chris Cannam clone() is never used (therefore presumably never works either) tonioni
Tue, 31 Mar 2015 11:54:57 +0100 Chris Cannam Implement FillGaps option in SparseModel export tonioni
Tue, 31 Mar 2015 11:05:02 +0100 Chris Cannam Wire options into CSVFileWriter; omit levels from Tony note export tonioni
Tue, 31 Mar 2015 10:39:54 +0100 Chris Cannam Merge tonioni
Tue, 31 Mar 2015 10:36:52 +0100 Chris Cannam Thread-local debug was causing crash on exit with Qt 5.4.x. But we introduced that because QDebug itself was crashing when used from multiple threads. Replace with simpler fstream version tonioni
Mon, 30 Mar 2015 17:27:25 +0100 Chris Cannam Add data export options (not all implemented yet) tonioni
Mon, 30 Mar 2015 16:58:01 +0100 Chris Cannam M_PI tonioni
Wed, 25 Mar 2015 10:54:51 +0000 Chris Cannam Fix to opening debug file tonioni
Mon, 23 Mar 2015 11:26:28 +0000 Chris Cannam Merge from cxx11 branch tonioni
Mon, 23 Mar 2015 10:04:48 +0000 Chris Cannam Merge from default branch tonioni
Wed, 11 Mar 2015 13:30:37 +0000 Chris Cannam Build fixes for OS/X cxx11
Wed, 11 Mar 2015 12:20:06 +0000 Chris Cannam c++11 flag in qmake project cxx11
Wed, 11 Mar 2015 11:52:05 +0000 Chris Cannam Minor simplification; could use more cxx11
Wed, 11 Mar 2015 11:03:22 +0000 Chris Cannam Fix buffer overwrite in normalised case cxx11
Wed, 11 Mar 2015 09:29:44 +0000 Chris Cannam Comments etc cxx11
Tue, 10 Mar 2015 20:03:08 +0000 Chris Cannam Merge cxx11
Tue, 10 Mar 2015 20:02:02 +0000 Chris Cannam Doh cxx11
Tue, 10 Mar 2015 17:23:45 +0000 Chris Cannam More type fixes. We now build with -Wconversion, on this platform (64-bit Linux) at least. cxx11
Tue, 10 Mar 2015 17:02:52 +0000 Chris Cannam Further dedicated-types fixes cxx11
Tue, 10 Mar 2015 13:22:10 +0000 Chris Cannam More type fixes cxx11
Tue, 10 Mar 2015 10:31:27 +0000 Chris Cannam More type fixes, primarily in the spectrogram cxx11
Mon, 09 Mar 2015 12:02:10 +0000 Chris Cannam Move to using double rather than float for floating-point calculations (float only for storage); more build fixes cxx11
Wed, 04 Mar 2015 19:08:21 +0000 Chris Cannam More type-size adjustments cxx11
Wed, 04 Mar 2015 13:52:48 +0000 Chris Cannam More build fixes cxx11
Wed, 04 Mar 2015 12:30:41 +0000 Chris Cannam Replace the get*Frames calls in AudioFileReader with less stupid API cxx11
Wed, 04 Mar 2015 12:01:04 +0000 Chris Cannam Introduce and use a samplerate type cxx11
Tue, 03 Mar 2015 17:09:19 +0000 Chris Cannam This code now compiles. Main problem: sample rate types cxx11
Tue, 03 Mar 2015 15:18:24 +0000 Chris Cannam Introducing the signed 64-bit frame index type, and fixing build failures from inclusion of -Wconversion with -Werror. Not finished yet. cxx11
Tue, 03 Mar 2015 09:33:59 +0000 Chris Cannam Merge from default branch cxx11
Mon, 02 Mar 2015 17:21:34 +0000 Chris Cannam Merge
Mon, 02 Mar 2015 17:17:59 +0000 Chris Cannam Require (and provide) text codec for output stream -- fixing #1153 (wrong codec used when writing RDF)
Thu, 26 Feb 2015 09:44:08 +0000 Chris Cannam Update and merge
Thu, 26 Feb 2015 09:43:12 +0000 Chris Cannam Debug reporting from FileSource
Tue, 24 Feb 2015 17:42:00 +0000 Chris Cannam Enable ThreadSanitizer datarace
Wed, 18 Feb 2015 12:08:17 +0000 Chris Cannam Add option to toggle H:M:S time display (when off, just show seconds even when more than 60)
Fri, 13 Feb 2015 13:30:28 +0000 Chris Cannam Use filename as object name when reading data file to model (so it shows in the resulting layer name)
Fri, 13 Feb 2015 13:29:44 +0000 Chris Cannam Compile fix
Wed, 14 Jan 2015 14:58:38 +0000 Chris Cannam RealTime frame-conversion test
Mon, 09 Feb 2015 10:31:07 +0000 Chris Cannam Merge from default branch cxx11
Mon, 09 Feb 2015 10:27:21 +0000 Chris Cannam Pending coreaudio-metadata
Mon, 08 Dec 2014 15:37:12 +0000 Chris Cannam Use double instead of float for frequencies in Pitch, just for confidence
Tue, 02 Dec 2014 17:53:17 +0000 Chris Cannam Wire up note/octave stuff
Tue, 02 Dec 2014 13:50:49 +0000 Chris Cannam Start adding piano note
Mon, 01 Dec 2014 15:42:58 +0000 Chris Cannam Unit tests for StringBits::splitQuoted
Mon, 01 Dec 2014 10:18:55 +0000 Chris Cannam If the first column of a CSV file has zero or one non-empty values in it, during the first 5 rows, then ignore it by default
Thu, 27 Nov 2014 17:51:21 +0000 Chris Cannam Merge
Thu, 27 Nov 2014 17:50:34 +0000 Chris Cannam Fix close-quote immediately before separator in StringBits::splitQuoted
Thu, 20 Nov 2014 16:18:31 +0000 Chris Cannam Avoid crash when setting alignment to 0
Thu, 20 Nov 2014 15:47:05 +0000 Chris Cannam Merge
Thu, 20 Nov 2014 15:46:19 +0000 Chris Cannam Make alignment using an external program asynchronous
Thu, 20 Nov 2014 12:30:16 +0000 Chris Cannam Couple more RealTime tests
Wed, 19 Nov 2014 15:28:51 +0000 Chris Cannam Another RealTime test
Mon, 17 Nov 2014 17:10:29 +0000 Chris Cannam Merge
Mon, 17 Nov 2014 17:09:32 +0000 Chris Cannam Start RealTime tests
Mon, 17 Nov 2014 15:31:07 +0000 Chris Cannam CXX11 (-std=c++11) branch, to test build environments before making any code adaptations cxx11
Fri, 14 Nov 2014 17:23:38 +0000 Chris Cannam Provide access to local filename
Fri, 14 Nov 2014 17:23:27 +0000 Chris Cannam Provide reader from QIODevice
Fri, 14 Nov 2014 13:51:33 +0000 Chris Cannam When using an aggregate model to pass data to a transform, zero-pad the shorter input to the duration of the longer rather than truncating the longer. (This is better behaviour for e.g. MATCH, and in any case the code was previously truncating incorrectly and ending up with garbage data at the end.)
Mon, 10 Nov 2014 09:19:49 +0000 Chris Cannam Merge from default branch tonioni
Wed, 15 Oct 2014 17:02:48 +0100 Chris Cannam TransformId is not sufficient -- it could be ambiguous (same transform id, different parameters etc). Use the whole transform
Wed, 15 Oct 2014 16:05:15 +0100 Chris Cannam Add setNofM logic which the JSON writer can use to write a list when sending multiple files' worth to a single target
Wed, 15 Oct 2014 13:30:14 +0100 Chris Cannam Write window type too
Wed, 15 Oct 2014 13:06:27 +0100 Chris Cannam Add plugin_version to transform RDF serialisation (if non-empty)
Wed, 15 Oct 2014 10:38:17 +0100 Chris Cannam Add omit-filename option to CSV writer (and test it while testing lab writer)
Wed, 15 Oct 2014 10:18:13 +0100 Chris Cannam Add fill-ends option to CSV writer (and test it)
Tue, 14 Oct 2014 17:30:37 +0100 Chris Cannam Implement end-times option for CSV writer (not yet tested)
Tue, 14 Oct 2014 10:07:02 +0100 Chris Cannam Add MIDI destinations tests and fix feature writer bugs resulting from them
Mon, 13 Oct 2014 14:44:51 +0100 Chris Cannam Add descriptions for writers; add housekeeping options to Sonic Annotator to list writers and formats
Mon, 13 Oct 2014 10:56:16 +0100 Chris Cannam Separate out stdout ability (not all writers that support one-file will necessarily want to support it, e.g. for binary formats)
Mon, 13 Oct 2014 10:55:43 +0100 Chris Cannam Add MIDI channel to note data and MIDI writer
Mon, 13 Oct 2014 10:00:54 +0100 Chris Cannam Write sample rate from output descriptor, for FixedSampleRate outputs
Fri, 10 Oct 2014 15:24:28 +0100 Chris Cannam Support plugin version in RDF transforms, and bail out in Sonic Annotator if it doesn't match
Wed, 08 Oct 2014 13:14:17 +0100 Chris Cannam Disconnect signals before abandoning reply object, avoiding "reply unknown" error
Fri, 03 Oct 2014 15:28:31 +0100 Chris Cannam Merge
Fri, 03 Oct 2014 15:27:02 +0100 Chris Cannam Handle variable columns by importing all of them (not just the minimum number)
Fri, 03 Oct 2014 15:09:27 +0100 Chris Cannam Add milliseconds as CSV import timing option
Fri, 03 Oct 2014 09:29:11 +0100 Chris Cannam Comment only
Wed, 01 Oct 2014 14:06:28 +0100 Chris Cannam Fix reading duration from transform XML (it was setting the start time instead!)
Wed, 01 Oct 2014 09:20:24 +0100 Chris Cannam Scary warning if transform RDF fails to use XSD duration format
Mon, 29 Sep 2014 13:27:13 +0100 Chris Cannam Correct some really stupid fixed-length string stuff, including a genuine stack overflow that causes a crash on OS/X for certain colour 3d plot data.
Tue, 16 Sep 2014 10:29:19 +0100 Chris Cannam Fix #1058 clicking row in Layer Edit dialog when colour 3d plot layer active jumps to wrong frame (was using sample rate where resolution intended)
Fri, 12 Sep 2014 11:38:55 +0100 Chris Cannam Experimentally add the hybrid normalisation as an option (not working well either in UI or implementation) normalize_hybrid_option
Wed, 10 Sep 2014 09:40:45 +0100 Chris Cannam If the old and new-style user resource prefixes return different results, move across resources from old to new to prime the new path first time we look it up
Tue, 09 Sep 2014 20:37:07 +0100 Chris Cannam Use QStandardPaths::writableLocation(DataLocation) instead of synthesising path ourselves (hopefully fixing encoding difficulties on Windows)
Tue, 09 Sep 2014 16:52:24 +0100 Chris Cannam Respond tidily to user cancellation during download, instead of going on to attempt to load the nonexistent file as a non-audio format
Tue, 09 Sep 2014 16:36:21 +0100 Chris Cannam Merge from default branch tonioni
Wed, 03 Sep 2014 13:10:19 +0100 Chris Cannam Fix potential null pointer deref
Wed, 03 Sep 2014 13:08:32 +0100 Chris Cannam Fix memory leak (from coverity scan)
Wed, 03 Sep 2014 13:06:13 +0100 Chris Cannam Fix some uninitialised values (from coverity scan)
Wed, 03 Sep 2014 11:27:23 +0100 Chris Cannam Fix some (probably benign) uninitialised members (from coverity scan)
Wed, 03 Sep 2014 11:26:21 +0100 Chris Cannam Fix some potential null derefs (from coverity scan)
Wed, 03 Sep 2014 11:22:46 +0100 Chris Cannam Fix memory leak
Wed, 03 Sep 2014 11:20:18 +0100 Chris Cannam Fix various slightly dodgy derefs and the like (from coverity scan)
Wed, 03 Sep 2014 11:10:22 +0100 Chris Cannam Fix some (probably benign) uninitialised members (from coverity scan)
Wed, 03 Sep 2014 11:09:26 +0100 Chris Cannam Fix some (probably benign) uninitialised members (from coverity scan)
Wed, 03 Sep 2014 11:07:12 +0100 Chris Cannam Remove redundant code (from coverity scan)
Wed, 03 Sep 2014 11:06:19 +0100 Chris Cannam Fix very minor but erroneous non-float-arithmetic
Wed, 03 Sep 2014 11:04:41 +0100 Chris Cannam clarify
Wed, 03 Sep 2014 11:01:50 +0100 Chris Cannam Fix some (probably benign) uninitialised members (from coverity scan)
Wed, 03 Sep 2014 11:00:19 +0100 Chris Cannam Fix some (probably benign) uninitialised members (from coverity scan)
Wed, 03 Sep 2014 10:56:59 +0100 Chris Cannam Backed out changeset 6b5e1edd95fc. I had misunderstood, the container is a vector, not a map, so the fix doesn't work and the original code (although definitely flawed) actually does
Wed, 03 Sep 2014 10:49:38 +0100 Chris Cannam Fix to iterator invalidation (from coverity scan)
Wed, 03 Sep 2014 10:40:37 +0100 Chris Cannam As coverity points out, MIDI_END_OF_EXCLUSIVE (0xF7) cannot result from masking with MIDI_MESSAGE_TYPE_MASK(0xF0). Not that it really matters here.
Wed, 03 Sep 2014 09:58:31 +0100 Chris Cannam Fix return of empty string as bool value (from coverity scan, interesting the compiler doesn't mind)