App crashes on android 6.0 : I have been getting this this weird Force Close of my app when someone on android 6.0 tries to upload a photo on my app while the app works compeletly fine on Android Kitkat, here is my logcat

    03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime: FATAL EXCEPTION: main
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime: Process: com.ummahtalk.network, PID: 14882
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=2, result=-1, data=Intent { dat=content://com.android.providers.media.documents/document/image:53790 flg=0x1 }} to activity {com.ummahtalk.network/com.ummahtalk.network.activities.posts.PublishActivity}: java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=14882, uid=10166 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.deliverResults(ActivityThread.java:3743)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.handleSendResult(ActivityThread.java:3786)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.-wrap16(ActivityThread.java)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1412)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:148)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5466)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:  Caused by: java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=14882, uid=10166 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.os.Parcel.readException(Parcel.java:1620)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.content.ContentProviderProxy.query(ContentProviderNative.java:421)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.content.ContentResolver.query(ContentResolver.java:493)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.content.ContentResolver.query(ContentResolver.java:435)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.ummahtalk.network.helpers.FilePath.getDataColumn(FilePath.java:117)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.ummahtalk.network.helpers.FilePath.getPath(FilePath.java:82)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.ummahtalk.network.activities.posts.PublishActivity.setImageUriValue(PublishActivity.java:468)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.ummahtalk.network.activities.posts.PublishActivity.onActivityResult(PublishActivity.java:238)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.Activity.dispatchActivityResult(Activity.java:6456)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.deliverResults(ActivityThread.java:3739)
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.handleSendResult(ActivityThread.java:3786) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.-wrap16(ActivityThread.java) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1412) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:148) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5466) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
03-29 18:36:33.627 14882-14882/com.ummahtalk.network E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
