Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71119048 authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change 23949 into eclair

* changes:
  GPS: Fix race condition reporting NMEA data.
parents 34619494 eb40aae2
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -370,14 +370,14 @@ static jint android_location_GpsLocationProvider_read_sv_status(JNIEnv* env, job

static jint android_location_GpsLocationProvider_read_nmea(JNIEnv* env, jobject obj, jint index, jbyteArray nmeaArray, jint buffer_size)
{
    // this should only be called from within a call to reportStatus, so we don't need to lock here
    // this should only be called from within a call to reportNmea, so we don't need to lock here

    jbyte* nmea = env->GetByteArrayElements(nmeaArray, 0);

    int length = strlen(sNmeaBuffer[index].nmea);
    int length = strlen(sNmeaBufferCopy[index].nmea);
    if (length > buffer_size)
        length = buffer_size;
    memcpy(nmea, sNmeaBuffer[index].nmea, length);
    memcpy(nmea, sNmeaBufferCopy[index].nmea, length);

    env->ReleaseByteArrayElements(nmeaArray, nmea, 0);
    return length;