crash if click twice in the text

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@muhammadarif·
0.000 HBD
crash if click twice in the text
#### PROJECT INFO
REPOSITORIES: ;https://github.com/Wilm0r/giggity
app name : gigity


#### EXPECTED BEHAVIOR 
when the user presses twice on the explanation part of a schedule the user should be able to copy those words

#### ACTUAL BEHAVIOR
when the user presses twice on that part of the sentence then the cursor position in change this app will crash and not work properly

#### HOW  TO REPRODUCE 
 - download gigity app from playstore or from fdroid 
- launch the app
- chose any event 
- and then click on any schedule option
- double click on the explanation part of the schedule and change the cursor position and see if this application will crash
browser : giigity v 1.3.2 
device : android 5.1 idos
##### bug recording 
https://youtu.be/3lOa3NCRzqo


#### logcat file 
```FATAL EXCEPTION: main
Process: net.gaast.giggity, PID: 3012
java.lang.IndexOutOfBoundsException: setSpan (-1 ... -1) starts before 0
	at android.text.SpannableStringInternal.checkRange(SpannableStringInternal.java:357)
	at android.text.SpannableStringInternal.setSpan(SpannableStringInternal.java:79)
	at android.text.SpannableString.setSpan(SpannableString.java:46)
	at android.text.Selection.setSelection(Selection.java:76)
	at android.widget.Editor$SelectionEndHandleView.updateSelection(Editor.java:3749)
	at android.widget.Editor$HandleView.positionAtCursorOffset(Editor.java:3384)
	at android.widget.Editor$SelectionEndHandleView.updatePosition(Editor.java:3764)
	at android.widget.Editor$HandleView.onTouchEvent(Editor.java:3504)
	at android.view.View.dispatchTouchEvent(View.java:8484)
	at android.view.View.dispatchPointerEvent(View.java:8684)
	at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4123)
	at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3989)
	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3544)
	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3597)
	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3563)
	at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3680)
	at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3571)
	at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3737)
	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3544)
	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3597)
	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3563)
	at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3571)
	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3544)
	at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5817)
	at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5```

proof of work done 
gihtub.com/muhammadarif1
👍 , , , , , , , , , , , , , , , , , ,