title: java.lang.StringIndexOutOfBoundsException while playing video in videoView : Android v 4.2.1
body: <p>I am getting this crash when I play video on videoView in Android version 4.2.1. I found this out specifically on Micromax Canvas A210 device. It is not showing any message where the error is occurring. Is this a bug or something wrong in application? The crash log is as below: </p>
  
  <pre><code>09-18 11:05:53.245: E/AndroidRuntime(2323): FATAL EXCEPTION: main
  09-18 11:05:53.245: E/AndroidRuntime(2323): java.lang.StringIndexOutOfBoundsException: length=11; regionStart=0; regionLength=-1
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at java.lang.String.startEndAndLength(String.java:583)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at java.lang.String.substring(String.java:1464)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.widget.VideoView.openVideo(VideoView.java:407)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.widget.VideoView$6.surfaceCreated(VideoView.java:730)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.SurfaceView.updateWindow(SurfaceView.java:606)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.SurfaceView.access$000(SurfaceView.java:88)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.SurfaceView$3.onPreDraw(SurfaceView.java:183)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:692)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2123)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1139)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4879)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:776)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.Choreographer.doCallbacks(Choreographer.java:579)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.Choreographer.doFrame(Choreographer.java:548)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:762)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.os.Handler.handleCallback(Handler.java:725)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.os.Handler.dispatchMessage(Handler.java:92)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.os.Looper.loop(Looper.java:153)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.app.ActivityThread.main(ActivityThread.java:5297)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at java.lang.reflect.Method.invokeNative(Native Method)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at java.lang.reflect.Method.invoke(Method.java:511)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
  09-18 11:05:53.245: E/AndroidRuntime(2323):     at dalvik.system.NativeStart.main(Native Method)
  </code></pre>
  
  <p>Other versions and devices that I have tested my app on and is working fine are:</p>
  
  <pre><code>Android versions: 4.1.2, 4.2.2, 4.3, 2.3.3, 4.0.3, 4.0.4
  Devices: Samsung Galaxy s2, Samsung Galaxy Tab 2 (7" and 10"), Samsung Galaxy s plus, Sony Xperia Tipo dual, Samsung Galaxy Grand (Quatro and Mega), Nexus 4
  </code></pre>