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

Commit 8e7991a5 authored by Rajneesh Chowdury's avatar Rajneesh Chowdury
Browse files

Fix for 4087846 Crash reported by monkey report (Java/Jni)

Change-Id: I356f975743f5a24e72f33a20ee497a2b12791be6
parent 3ec9d06f
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -899,6 +899,10 @@ public class VideoEditorImpl implements VideoEditor {
            throw new IllegalArgumentException("Surface could not be retrieved from Surface holder");
        }

        if (surface.isValid() == false) {
            throw new IllegalStateException("Surface is not valid");
        }

        if (timeMs < 0) {
            throw new IllegalArgumentException("requested time not correct");
        } else if (timeMs > mDurationMs) {
@@ -1622,6 +1626,10 @@ public class VideoEditorImpl implements VideoEditor {
            throw new IllegalArgumentException("Surface could not be retrieved from surface holder");
        }

        if (surface.isValid() == false) {
            throw new IllegalStateException("Surface is not valid");
        }

        if (listener == null) {
            throw new IllegalArgumentException();
        }
@@ -1858,6 +1866,10 @@ public class VideoEditorImpl implements VideoEditor {
            throw new IllegalArgumentException("Surface could not be retrieved from surface holder");
        }

        if (surface.isValid() == false) {
            throw new IllegalStateException("Surface is not valid");
        }

        if (mMANativeHelper != null) {
            mMANativeHelper.clearPreviewSurface(surface);
        } else {
+12 −0
Original line number Diff line number Diff line
@@ -557,6 +557,10 @@ static void videoEditor_clearSurface(JNIEnv* pEnv,

    Surface* const p = (Surface*)pEnv->GetIntField(surface, surface_native);
    sp<Surface> previewSurface = sp<Surface>(p);
    // Validate the mSurface's mNativeSurface field
    videoEditJava_checkAndThrowIllegalStateException(&needToBeLoaded, pEnv,
                                                (NULL == previewSurface.get()),
                                                "mNativeSurface is null");

    frameStr.pBuffer = M4OSA_NULL;
    frameStr.timeMs = 0;
@@ -634,6 +638,10 @@ static int videoEditor_renderPreviewFrame(JNIEnv* pEnv,

    Surface* const p = (Surface*)pEnv->GetIntField(mSurface, surface_native);
    sp<Surface> previewSurface = sp<Surface>(p);
    // Validate the mSurface's mNativeSurface field
    videoEditJava_checkAndThrowIllegalStateException(&needToBeLoaded, pEnv,
                                                (NULL == previewSurface.get()),
                                                "mNativeSurface is null");

    /* Determine the total number of clips, total duration*/
    uiNumberOfClipsInStoryBoard = pContext->pEditSettings->uiClipNumber;
@@ -2058,6 +2066,10 @@ videoEditor_startPreview(
    Surface* const p = (Surface*)pEnv->GetIntField(mSurface, surface_native);

    sp<Surface> previewSurface = sp<Surface>(p);
    // Validate the mSurface's mNativeSurface field
    videoEditJava_checkAndThrowIllegalStateException(&needToBeLoaded, pEnv,
                                                (NULL == previewSurface.get()),
                                                "mNativeSurface is null");

    result =  pContext->mPreviewController->setSurface(previewSurface);
    videoEditJava_checkAndThrowRuntimeException(&needToBeLoaded, pEnv,