Problems with latest tip


#1

Building a basic Android app fails with the latest tip. After a git pull, I created a new GUI Application project with a freshly built Introjucer and tried to build using ant:

     [exec] [armeabi] Compile++ thumb: juce_jni <= juce_audio_basics.cpp
     [exec] [armeabi] Compile++ thumb: juce_jni <= juce_audio_devices.cpp
     [exec] In file included from jni/../../../../JUCE/modules/juce_audio_devices/juce_audio_devices.cpp:215:0:
     [exec] jni/../../../../JUCE/modules/juce_audio_devices/native/juce_android_OpenSL.cpp: In constructor 'juce::OpenSLAudioIODevice::OpenSLAudioIODevice(const juce::String&)':
     [exec] jni/../../../../JUCE/modules/juce_audio_devices/native/juce_android_OpenSL.cpp:52:37: error: request for member 'minBufferSizeIn' in 'juce::javaDevice', which is of non-class type 'juce::AndroidAudioIODevice(juce::String (*)())'
     [exec]          inputLatency  = (javaDevice.minBufferSizeIn  * 2) / 3;
     [exec]                                      ^
     [exec] jni/../../../../JUCE/modules/juce_audio_devices/native/juce_android_OpenSL.cpp:53:37: error: request for member 'minBufferSizeOut' in 'juce::javaDevice', which is of non-class type 'juce::AndroidAudioIODevice(juce::String (*)())'
     [exec]          outputLatency = (javaDevice.minBufferSizeOut * 2) / 3;
     [exec]                                      ^
     [exec] make: *** [obj/local/armeabi/objs-debug/juce_jni/__/__/__/__/JUCE/modules/juce_audio_devices/juce_audio_devices.o] Error 1
     [exec] make: *** Waiting for unfinished jobs....

BUILD FAILED

Any ideas?


#2

Oh goddammit, that's one of the few edge-cases in C++ that really annoys me...

I was getting rid of some String::empty uses and replacing them with String(), and it seemed like such a no-brainer to change this:

        AndroidAudioIODevice javaDevice (String::empty);

to

        AndroidAudioIODevice javaDevice (String());

..that it didn't even need checking.

But no! I'll leave it as an exercise for the language nerds to spot my mistake!