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

Commit 8d1424d3 authored by Christopher Lais's avatar Christopher Lais Committed by Steve Kondik
Browse files

libmedia: Fix backward-compatible constructors

With a terrible terrible hack.  :(

Change-Id: I48cb8f17d4563e180eb10462645e19088856a411
parent 3c0fb1ee
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -47,6 +47,10 @@ ifneq ($(TARGET_SIMULATOR),true)
LOCAL_SHARED_LIBRARIES += libdl
endif

ifeq ($(BOARD_USE_KINETO_COMPATIBILITY),true)
LOCAL_CFLAGS += -DUSE_KINETO_COMPATIBILITY
endif

LOCAL_C_INCLUDES := \
    $(JNI_H_INCLUDE) \
    $(call include-path-for, graphics corecg) \
+32 −0
Original line number Diff line number Diff line
@@ -98,6 +98,38 @@ AudioRecord::AudioRecord(
            frameCount, flags, cbf, user, notificationFrames, sessionId);
}

#ifdef USE_KINETO_COMPATIBILITY
// Really dirty hack to give a Froyo-compatible constructor
extern "C" AudioRecord *_ZN7android11AudioRecordC1EijijijPFviPvS1_ES1_ii(
        AudioRecord *This,
        int inputSource,
        uint32_t sampleRate,
        int format,
        uint32_t channels,
        int frameCount,
        uint32_t flags,
        AudioRecord::callback_t cbf,
        void* user,
        int notificationFrames,
        int sessionId);
extern "C" AudioRecord *_ZN7android11AudioRecordC1EijijijPFviPvS1_ES1_i(
        AudioRecord *This,
        int inputSource,
        uint32_t sampleRate,
        int format,
        uint32_t channels,
        int frameCount,
        uint32_t flags,
        AudioRecord::callback_t cbf,
        void* user,
        int notificationFrames)
{
    return _ZN7android11AudioRecordC1EijijijPFviPvS1_ES1_ii(This,
        inputSource, sampleRate, format, channels,
        frameCount, flags, cbf, user, notificationFrames, 0);
}
#endif

AudioRecord::~AudioRecord()
{
    if (mStatus == NO_ERROR) {
+32 −0
Original line number Diff line number Diff line
@@ -96,6 +96,38 @@ AudioTrack::AudioTrack(
            0, false, sessionId);
}

#ifdef USE_KINETO_COMPATIBILITY
// Really dirty hack to give a Froyo-compatible constructor
extern "C" AudioTrack *_ZN7android10AudioTrackC1EijiiijPFviPvS1_ES1_ii(
        AudioTrack *This,
        int streamType,
        uint32_t sampleRate,
        int format,
        int channels,
        int frameCount,
        uint32_t flags,
        AudioTrack::callback_t cbf,
        void* user,
        int notificationFrames,
        int sessionId);
extern "C" AudioTrack *_ZN7android10AudioTrackC1EijiiijPFviPvS1_ES1_i(
        AudioTrack *This,
        int streamType,
        uint32_t sampleRate,
        int format,
        int channels,
        int frameCount,
        uint32_t flags,
        AudioTrack::callback_t cbf,
        void* user,
        int notificationFrames)
{
    return _ZN7android10AudioTrackC1EijiiijPFviPvS1_ES1_ii(This,
        streamType, sampleRate, format, channels,
        frameCount, flags, cbf, user, notificationFrames, 0);
}
#endif

AudioTrack::AudioTrack(
        int streamType,
        uint32_t sampleRate,