cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-12434) Stoping a Paused Recording throws file not found exception
Date Fri, 10 Feb 2017 22:53:41 GMT

    [ https://issues.apache.org/jira/browse/CB-12434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15861958#comment-15861958
] 

ASF subversion and git services commented on CB-12434:
------------------------------------------------------

Commit fcf8bc591c742b89bb50deb4fd8245cad1bc388e in cordova-plugin-media's branch refs/heads/master
from [~jcesarmobile]
[ https://git-wip-us.apache.org/repos/asf?p=cordova-plugin-media.git;h=fcf8bc5 ]

CB-12434 (Android) fix Stoping a Paused Recording throws exception

 This closes #127


> Stoping a Paused Recording throws file not found exception
> ----------------------------------------------------------
>
>                 Key: CB-12434
>                 URL: https://issues.apache.org/jira/browse/CB-12434
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Plugin Media
>    Affects Versions: 2.4.1
>            Reporter: jcesarmobile
>            Assignee: jcesarmobile
>              Labels: android, easyfix
>
> Start recording
> pause recording
> stop recording
> boom!
> {code}
> /storage/emulated/0/tmprecording-1486509338267.3gp: open failed: ENOENT (No such file
or directory)
>                                                                  java.io.FileNotFoundException:
/storage/emulated/0/tmprecording-1486509338267.3gp: open failed: ENOENT (No such file or directory)
>                                                                      at libcore.io.IoBridge.open(IoBridge.java:452)
>                                                                      at java.io.FileInputStream.<init>(FileInputStream.java:76)
>                                                                      at org.apache.cordova.media.AudioPlayer.moveFile(AudioPlayer.java:213)
>                                                                      at org.apache.cordova.media.AudioPlayer.stopRecording(AudioPlayer.java:271)
>                                                                      at org.apache.cordova.media.AudioHandler.stopRecordingAudio(AudioHandler.java:298)
>                                                                      at org.apache.cordova.media.AudioHandler.execute(AudioHandler.java:121)
>                                                                      at org.apache.cordova.CordovaPlugin.execute(CordovaPlugin.java:98)
>                                                                      at org.apache.cordova.PluginManager.exec(PluginManager.java:132)
>                                                                      at org.apache.cordova.CordovaBridge.jsExec(CordovaBridge.java:57)
>                                                                      at org.apache.cordova.engine.SystemExposedJsApi.exec(SystemExposedJsApi.java:41)
>                                                                      at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native
Method)
>                                                                      at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41)
>                                                                      at android.os.Handler.dispatchMessage(Handler.java:102)
>                                                                      at android.os.Looper.loop(Looper.java:148)
>                                                                      at android.os.HandlerThread.run(HandlerThread.java:61)
>                                                                   Caused by: android.system.ErrnoException:
open failed: ENOENT (No such file or directory)
>                                                                      at libcore.io.Posix.open(Native
Method)
>                                                                      at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
>                                                                      at libcore.io.IoBridge.open(IoBridge.java:438)
>                                                                      at java.io.FileInputStream.<init>(FileInputStream.java:76) 
>                                                                      at org.apache.cordova.media.AudioPlayer.moveFile(AudioPlayer.java:213) 
>                                                                      at org.apache.cordova.media.AudioPlayer.stopRecording(AudioPlayer.java:271) 
>                                                                      at org.apache.cordova.media.AudioHandler.stopRecordingAudio(AudioHandler.java:298) 
>                                                                      at org.apache.cordova.media.AudioHandler.execute(AudioHandler.java:121) 
>                                                                      at org.apache.cordova.CordovaPlugin.execute(CordovaPlugin.java:98) 
>                                                                      at org.apache.cordova.PluginManager.exec(PluginManager.java:132) 
>                                                                      at org.apache.cordova.CordovaBridge.jsExec(CordovaBridge.java:57) 
>                                                                      at org.apache.cordova.engine.SystemExposedJsApi.exec(SystemExposedJsApi.java:41) 
>                                                                      at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native
Method) 
>                                                                      at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41) 
>                                                                      at android.os.Handler.dispatchMessage(Handler.java:102) 
>                                                                      at android.os.Looper.loop(Looper.java:148) 
>                                                                      at android.os.HandlerThread.run(HandlerThread.java:61) 
> {code}
> the problem is the file is added to the tempFiles list twice, once on pause and once
on stop, so it's moved twice, and the second time it doesn't exist anymore because it was
moved.
> It's an easy fix, just check if the tempFiles already contains the file on stopRecording
> {code}
> if (!this.tempFiles.contains(this.tempFile)) {
>     this.tempFiles.add(this.tempFile);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org


Mime
View raw message