Fix some crashes
This commit is contained in:
parent
e4d8605833
commit
eadb766f82
|
@ -723,7 +723,7 @@ public class Account implements Parcelable {
|
|||
int startPositionTar = spannableString.toString().indexOf("@" + this.getMoved_to_account().getAcct());
|
||||
int endPositionTar = startPositionTar + ("@" + this.getMoved_to_account().getAcct()).length();
|
||||
final Account idTar = this.getMoved_to_account();
|
||||
if (endPositionTar <= spannableString.toString().length() && endPositionTar >= startPositionTar)
|
||||
if (startPositionTar >= 0 && endPositionTar <= spannableString.toString().length() && endPositionTar >= startPositionTar)
|
||||
spannableString.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -801,7 +801,7 @@ public class Account implements Parcelable {
|
|||
int matchStart = matcher.start(0);
|
||||
int matchEnd = matcher.end();
|
||||
final String url = fieldSpan.toString().substring(matchStart, matchEnd);
|
||||
if (matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart) {
|
||||
if (matchStart >= 0 && matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart) {
|
||||
fieldSpan.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -832,7 +832,7 @@ public class Account implements Parcelable {
|
|||
int matchStart = matcher.start(0);
|
||||
int matchEnd = matcher.end();
|
||||
final String email = fieldSpan.toString().substring(matchStart, matchEnd);
|
||||
if (matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart) {
|
||||
if (matchStart >= 0 && matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart) {
|
||||
fieldSpan.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -865,7 +865,7 @@ public class Account implements Parcelable {
|
|||
int matchStart = matcher.start(1);
|
||||
int matchEnd = matcher.end();
|
||||
final String tag = fieldSpan.toString().substring(matchStart, matchEnd);
|
||||
if (matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart)
|
||||
if (matchStart >= 0 && matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart)
|
||||
fieldSpan.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -935,7 +935,7 @@ public class Account implements Parcelable {
|
|||
int matchStart = matcher.start(0);
|
||||
int matchEnd = matcher.end();
|
||||
final String url = fieldSpan.toString().substring(matchStart, matchEnd);
|
||||
if (matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart) {
|
||||
if (matchStart >= 0 && matchEnd <= fieldSpan.toString().length() && matchEnd >= matchStart) {
|
||||
fieldSpan.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
|
|
@ -525,7 +525,7 @@ public class Status implements Parcelable {
|
|||
int matchStart = matcher.start(2);
|
||||
int matchEnd = matcher.end();
|
||||
final String twittername = matcher.group(2);
|
||||
if (matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart)
|
||||
if (matchStart >= 0 && matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart)
|
||||
spannableStringT.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -574,7 +574,7 @@ public class Status implements Parcelable {
|
|||
endPosition = startPosition + key.length();
|
||||
}
|
||||
//Accounts can be mentioned several times so we have to loop
|
||||
if (endPosition <= spannableStringT.toString().length() && endPosition >= startPosition)
|
||||
if (startPosition >= 0 && endPosition <= spannableStringT.toString().length() && endPosition >= startPosition)
|
||||
spannableStringT.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -788,7 +788,7 @@ public class Status implements Parcelable {
|
|||
int matchStart = matcher.start(1);
|
||||
int matchEnd = matcher.end();
|
||||
final String tag = spannableStringT.toString().substring(matchStart, matchEnd);
|
||||
if (matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart)
|
||||
if (matchStart >= 0 && matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart)
|
||||
spannableStringT.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -797,6 +797,7 @@ public class Status implements Parcelable {
|
|||
Bundle b = new Bundle();
|
||||
b.putString("tag", tag.substring(1));
|
||||
intent.putExtras(b);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
context.startActivity(intent);
|
||||
}
|
||||
}
|
||||
|
@ -817,7 +818,7 @@ public class Status implements Parcelable {
|
|||
int matchStart = matcher.start(1);
|
||||
int matchEnd = matcher.end();
|
||||
final String groupname = spannableStringT.toString().substring(matchStart, matchEnd);
|
||||
if (matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart)
|
||||
if (matchStart >= 0 && matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart)
|
||||
spannableStringT.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
@ -870,7 +871,7 @@ public class Status implements Parcelable {
|
|||
int matchStart = matcherALink.start();
|
||||
int matchEnd = matcherALink.end();
|
||||
final String url = contentSpanTranslated.toString().substring(matcherALink.start(1), matcherALink.end(1));
|
||||
if (matchEnd <= contentSpanTranslated.toString().length() && matchEnd >= matchStart)
|
||||
if (matchStart >= 0 && matchEnd <= contentSpanTranslated.toString().length() && matchEnd >= matchStart)
|
||||
contentSpanTranslated.setSpan(new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View textView) {
|
||||
|
|
Loading…
Reference in New Issue