Fixes #1341: AudioBuffer.updateData only allows direct buffers (#1342)

* only allowing direct buffers now, see: https://hub.jmonkeyengine.org/t/solved-playing-audio-from-audiobuffer-in-audionode-causes-jre-to-die/43091/12

* style correction

Co-authored-by: Stephen Gold <sgold@sonic.net>
v3.3
matthias plasser 5 years ago committed by Stephen Gold
parent 98a283beb6
commit c85e2bcfd4
  1. 8
      jme3-core/src/main/java/com/jme3/audio/AudioBuffer.java

@ -31,9 +31,9 @@
*/
package com.jme3.audio;
import com.jme3.audio.AudioData.DataType;
import com.jme3.util.BufferUtils;
import com.jme3.util.NativeObject;
import java.nio.ByteBuffer;
/**
@ -85,8 +85,14 @@ public class AudioBuffer extends AudioData {
/**
* Update the data in the buffer with new data.
* @param data
* @throws IllegalArgumentException if the provided buffer is not a direct buffer
*/
public void updateData(ByteBuffer data){
if (!data.isDirect()) {
throw new IllegalArgumentException(
"Currently only direct buffers are allowed");
}
this.audioData = data;
updateNeeded = true;
}

Loading…
Cancel
Save